一、开发技术
pycharm、MySQL数据库/sqlite3数据库、Python3.x版本、Flask框架
二、功能
用户注册、登录、后台管理员、商品数据基本信息首页、数据统计分析、商品价格区间、销售价格、销量、好评率、差评率、商品详情
商品数据分析可视化、区间饼图、柱状图、折线图、好评率前5、前5品牌、差评最多...............
商品数据爬虫......
三、项目运行截图
1、MySQL版本要求: 8.0 (5.x版本导不进去)
2、运行说明:
启动app.py文件,浏览器打开可视化大屏:http://127.0.0.1:5000/
系统后台页面:http://127.0.0.1:5000/login
账号admins 密码 admins
一、数据集说明
数据格式:数据集存入一个以yiqing.sql命名的sql文件中;
数据来源:通过Python的爬虫技术,爬取腾讯疫情数据可视化平台的数据;
数据存储方式:将爬取到的数据存入MySQL数据库中;
数据特点:数据库系统实现了整体数据的结构化,数据之间有联系;备份数据,可以避免数据丢失,可以被多个应用程序共享使用,可以大大减少数据冗余,节约存储空间;数据独立性高。
二、技术说明
本项目运用Python网络爬虫、MySQL、Flask、ECharts、Layui为基础的新冠疫情实时监测系统。涉及到的技术主要包括:使用Python网络爬虫爬取疫情数据、使用MySQL数据库存储解析得到的数据、利用Flask构建Web项目、利用ECharts生成可视化大屏图、利用Layui生成后台数据管理的网页布局。功能主要包括管理员的登录、管理员对数据爬虫进行启动获取数据、管理员对后台疫情相关数据进行修改和删除操作、全国新冠肺炎疫情总体状况统计和展示等。
Python编程语言
Python程序语言适用于数据处理、数据可视化等,所以在该项目使用Python程序语言是非常合适的。Python可以根据pip来直接安装大量的第三方库,便于操作。
Python网络爬虫
网络爬虫是一种根据具体搜索规则来实现自动爬行的应用程序。因为标准库和第三方库的内容全面而充实,所以它能够实现大量的数据采集、数据分析等工作。
爬虫工作的流程:
①建立起请求,获取响应。
通过HTTP库,对目标站点进行请求,就好像打开浏览器,输入一个网址。
用到的库∶ Urlib、Urlib3、Requests。服务器会返回请求的内容,一般为HTML、二进制文件、文档、JSON字符串等。
②解析内容。
寻求自己所需的信息,即使用正则表达式或利用其他库来提取目标管理信息。Re库和BeautifulSoup4库是最常见的两种。
③保存数据。
将分析所得到的数据持久化到文件或者数据库中。
beautifulsoup4库
使用beautifulsoup4解析内容
beautifulsoup4将复杂的 HTML 文档转换成一个树形结构,每个节点都是Python对象
➢安装:pip install beautifulsoup4
➢BeautifulSoup(html)
➢ 获取节点:find()、find_all()/select()
➢ 获取属性:attrs
➢ 获取文本:text
MySQL数据库
MySQL数据库是目前大家使用最频繁的关系数据库管理系统之一。它是瑞典MySQL AB公司发展起来的,后来被Oracle公司收购。关系型数据库把数据存储于不同的数据表格中,而非把所有的数据都置于一个大的仓库中,并且表与表之间也有联系。因此,访问的速度和灵活性得到了改善。MySQL使用的SQL语句是目前应用最广泛的一种规范语言。
➢使用 pymysql 模块与数据库交互
➢安装: pip install pymysql
① 建立连接
② 创建游标
③ 执行操作
④ 关闭连接
Flask框架
Flask 是一个使用 Python 编写的轻量级 Web 应用框架。其 WSGI(Python Web Server Gateway Interface) 工具包采用 Werkzeug ,模板引擎则使用 Jinja2 ,是目前十分流行的 web 框架。
• Flask 获取请求参数
➢ 使用 request 对象获取参数
① request.values 获取参数字典
② request.values.get("参数名")
• 使用 Ajax 局部刷新页面
➢Ajax 是 Asynchronous JavaScript
and XML 的简称,通过 Ajax 向服务
器发送请求,接收服务器返回的json
数据,然后使用JavaScript 修改网页
的来实现页面局部数据更新
➢使用 jquery 框架可方便的编写
ajax代码,需要 jquery.js 文件
ECharts,缩写来自 Enterprise Charts,商业级数据图表,是百度的一个开源的数据可视化工具,提供了丰富的图表库,能够在 PC 端和移动设备上流畅运行。
Layui(谐音:类 UI) 是一套开源的 Web UI 解决方案,采用自身经典的模块化规范,并遵循原生 HTML/CSS/JS 的开发方式,极易上手,拿来即用。其风格简约轻盈,而组件优雅丰盈,从源代码到使用方法的每一处细节都经过精心雕琢,非常适合网页界面的快速开发。Layui 区别于那些基于 MVVM 底层的前端框架,却并非逆道而行,而是信奉返璞归真之道。准确地说,它更多是面向后端开发者,你无需涉足前端各种工具,只需面对浏览器本身,让一切你所需要的元素与交互,从这里信手拈来。