本项目是一个基于Python+Flask+Echarts打造的一个疫情监控系统,涉及的知识有:
1.设置Jupyter Notebook默认目录:
cmd、jupyter notebook --generate–config、编辑生成的jupyter notebook --generate–config.py文件、搜索找到notebook_dir、取消注释的c.NotebookApp.notebook_dir=r目标目录’、保存退出
2.打开方式:
(1)cmd、jupyter notebook
(2)点击菜单栏anaconda3下的jupyter notebook
(3)编辑脚本:start.cmd(编辑内容为jupyter notebook)
3.基本操作:
(1)新建文件:new 和 导入文件:Upload
(2)单元格分类:code、markdown
(3)命令模式(蓝色边框) 与 编辑模式(绿色模式)
(4)常用快捷键
4.markdown语法
标题:使用1~6个#跟随一个空格来表示
无序列表:使用*,-或+后跟随一个空格
有序列表:使用数字+点表示
换行:使用两个或以上的空行
代码:可以使用``来标记
代码块:可以使用``````来标记
分隔符:三个***或三个—
#### 1.1爬虫概述
爬虫,就是给网站发起请求,并从响应中提取需要的数据自动化程序
发起请求,获取响应
通过http库,对目标站点进行请求,等同于自己打开浏览器,输入网址
常用库:urllib,urllib3,requests
服务器会返回请求的内容,一般为html,二进制文件(音频或视频等),文档,json字符串等
解析内容
寻找自己想要的信息,利用正则表达式或者其他库提取目标信息
常用库:re,beautifulsoup4
保存数据
将解析得到的数据持久化到文件或数据库
request.urlopen()
导入模块:
from urllib import request
url='http://www.baidu.com'
res = request.urlopen(url)#获取响应
print(res.info())#响应头
print(res.getcode())#状态码 2xx,3xx,4xx
print(res.geturl())#返回响应地址
### 2.1MySQL操作
mysql –h localhost –u root -p
show databases;
create database cov;
show databases;
use cov;
history 表存储每日总数据
CREATE TABLE `history` (
`ds` datetime NOT NULL COMMENT '日期',
`confirm` int(11) DEFAULT NULL COMMENT '累计确诊',
`confirm_add` int(11) DEFAULT NULL COMMENT '当日新增确诊',
`suspect` int(11) DEFAULT NULL COMMENT '剩余疑似',
`suspect_add` int(11) DEFAULT NULL COMMENT '当日新增疑似',
`heal` int(11) DEFAULT NULL COMMENT '累计治愈',
`heal_add` int(11) DEFAULT NULL COMMENT '当日新增治愈',
`dead` int(11) DEFAULT NULL COMMENT '累计死亡',
`dead_add` int(11) DEFAULT NULL COMMENT '当日新增死亡',
PRIMARY KEY (`ds`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
CREATE TABLE `details` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`update_time` datetime DEFAULT NULL COMMENT '数据最后更新时间',
`province` varchar(50) DEFAULT NULL COMMENT '省',
`city` varchar(50) DEFAULT NULL COMMENT '市',
`confirm` int(11) DEFAULT NULL COMMENT '累计确诊',
`confirm_add` int(11) DEFAULT NULL COMMENT '新增确诊',
`heal` int(11) DEFAULT NULL COMMENT '累计治愈',
`dead` int(11) DEFAULT NULL COMMENT '累计死亡',
PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
安装:pip install pymysql
出现的问题:
百度的数据页面使用了动态渲染技术,我们可以用 selenium 来爬
pip install selenium
之后的步骤看下篇文章:大屏数据可视化-疫情监控系统2-web程序开发
https://blog.csdn.net/hahahahah123456/article/details/108090536
参考:
https://lfengting.gitee.io/blog/2020/03/24/python%E7%88%AC%E8%99%AB%E5%AE%9E%E6%88%98/
https://www.bilibili.com/video/BV177411j7qJ