Access把每一天的数据累加_Python爬虫实战之 爬取全国理工类大学数量+数据可视化...
上次爬取高考分数线这部分收了个尾,今天咱们来全面爬取全国各省有多少所理工类大学,并简单实现一个数据可视化。话不多说,咱们开始吧。
第一步,拿到url地址
第二步,获取高校数据
第三步,地图可视化
第四步,调用函数实现需求
第一步,拿到url地址
这一部分需要导入这些库:
import 首先,拿到初始的url地址:
url_start 将“理工”进行转码处理,就变成了url后面那样。
进入后页面如下:
可以看到,共匹配到866所学校,共有44页。感觉能继续往下爬了吗?别急,接着往下看。
我们先进行常规的get请求,发现得不到网页信息。同时发现,这些高校数据并不在网页源代码中,怎么办呢?
如果数据不在当前的url当中,要通过抓包工具network来分析数据,再通过search来查询我们需要的数据。
我们先搜索关键字“重庆工程学院”,可以看到response获取信息成功,切换到Headers处,能够确定请求的方法为post请求,得到数据请求的真正url地址。
这就是真正的url地址:
url 其中page参数代表页数,可以看到,page=1,以第1页为例开始爬。通过遍历即可获取所有数据。其中post方式需提交一个data表单。
这一部分代码如下:
# 获取44页的url
获取到的url列表如下,共有44条:
之后的代码如下:
# 将之前列表中的url传过来
第二步,获取高校数据
这一部分需要导入这些库:
import 运行以上代码,可以发现所有数据存放在一个字典中。
现在我们需要做的,就是把高校名称、城市字段提取出来。这一页所有信息都存放在名为data的字典中,现在把字典拿出来。
由于数据是属于json类型,所以要进行相应的转换(转化成python数据要用json.loads()命令),以便提取数据。
提取数据
def 可以发现,现在的数据存放到了一个列表中,咱们继续提取。
# 大学名称 现在要找到各省份的理工类高校数量:
# 寻找同一省份的学校个数 第三步,地图可视化
上面我们得到了省份及理工类大学数量,现在需要把分布地图绘制出来。需要注意的是,要把pyecharts版本切换为1.6.2。
这一部分需要导入这些库:
from 具体代码如下:
def 第四步,调用函数实现需求
前面三步中,咱们通过函数来实现了爬取数据和地图可视化的功能。现在需要在最后加上一个main方法,来调用前面的函数,从而实现最终需求。
if 其中,第2步的结果如下,此时各省份数量还未汇总:
第3步的结果如下,此时各省份数量已经汇总完毕:
第4步的结果如下,此时是打包好的将要用于绘图的数据:
运行整个程序后,得到了这样一幅地图,咱们实现了地图可视化:
至此,咱们已经统计出全国的理工类大学在各省份的数量分布,实现了爬虫和数据可视化的完美结合。
最近在知乎创建了一个新的Python技术圈子,在里面每天都会分享好玩有趣的Python知识,你如果对Python这门技术感兴趣的可以加入哦!交个朋友
Python技术 - 知乎www.zhihu.com
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
