编程从0到1,做一个爬虫数据分析web全栈项目会用到哪些技术?
这个项目名为「差评分析助手」,是一个有助于理性购物的教学演示项目,是个综合性的全栈项目,已经上线。
具体介绍见之前的视频:
目标
一个涉及到Python基础,爬虫,数据分析,前端,web框架,数据库,缓存,任务队列,服务部署,上线优化的综合性可扩展的项目。
综合运用各种编程知识,培养全栈开发能力。
功能
前端
展示业务流程
分页
跳转
数据可视化
后端
制作API,获取状态和结果
根据分页返回数据
缓存优先
分页获取
异步执行任务
windows: pip install eventlet
> celery worker -A app.celery --loglevel=debug -P eventlet
前后端分离
跨域
restful
验证
docker服务部署
上线优化
技术
前端
vue
https://cn.vuejs.org/v2/guide/
vuex
https://vuex.vuejs.org/zh/guide/state.html
elementUI
https://element.eleme.cn/#/zh-CN
https://github.com/ElementUI/vue-cli-plugin-element
echarts
https://gallery.echartsjs.com/explore.html#sort=rank~timeframe=all~author=all
https://www.echartsjs.com/tutorial.html
https://www.echartsjs.com/examples/
v-charts
https://v-charts.js.org/#/props
后端API
Python
基础知识
面向对象
网络基础
http
web框架
flask
http://flask.pocoo.org/
https://flask-restful.readthedocs.io/en/latest/
https://flask-httpauth.readthedocs.io/en/latest/
爬虫
优化
制作API
mongodb
存储爬取结果
redis
记录任务,爬虫状态
缓存分析结果
celery
任务队列
rabbitmq
pandas
提取有用数据
https://www.jianshu.com/p/161364dd0acf
https://pandas.pydata.org/pandas-docs/stable/getting_started/10min.html#merge
可视化
维度:观察数据的角度和对数据的描述
目标:使用图表展示数据,让用户快速抓住要点信息
要点:把握图表特点,使用不同维度,展示合适的数据。
图表分类
折线图
示意图
展示数据的趋势,在横轴的维度上展示纵轴数据的变化趋势
柱状图
示意图
比较数据大小,多个维度的变化分析,用大小和颜色区分
局限:分类过多则无法展示数据特点
饼图
示意图
表示一组数据的占比
工具
echarts:
https://www.echartsjs.com
http://echarts.apache.org/
pyecharts: https://pyecharts.org/#/zh-cn/intro
v-charts: https://v-charts.js.org/#/
后续会逐步推出前端到后端的开发过程,敬请关注。