Python自动化运维Python那些事儿python3

手把手教你利用Pyecharts库对IP代理数据进行数据可视化分

2020-05-02  本文已影响0人  Python进阶学习交流

/1 前言/

前几天小编发布了手把手教你使用Python爬取西次代理数据(上篇)和手把手教你使用Python爬取西次代理数据(下篇),木有赶上车的小伙伴,可以戳进去看看。今天小编带对爬取的数据进行可视化操作,数据可视化主要利用 pyecharts 库进行操作,具体步骤如下。

本次爬虫的目的主要是想分析代理在全国各城市的分布情况。小编的思路是对所有城市的代理数量进行一个统计,然后通过可视化技术构建一个代理热力分布图。整体思路是使用 pyecharts 构建一张热力分布图,用以直观展现各个城市的代理分布情况。

/2 代理分布统计/

Pyecharts 在进行热力图绘制的时候,需要提供城市名,但实际上从网上爬取到的位置数据并不是标准的城市名:

这个时候需要我们对这些数据进行处理,从位置中将城市名提取出来,例如:湖北十堰 需要提取出 十堰 来。

为了达到这个目的,我使用开源的** cpca** 库进行提取,该库主要使用结巴分词对数据进行处理,然后比对数据库,将省市县提取出来,一个直观的例子如下:

通过这种方式,我们就可以提取出城市名了,在然后在代码中实现如下:

提取完城市数据之后,需要对城市的代理数量进行一个统计,总体思路是,构建一个列表。然后循环遍历抓取的城市,如果找到一个列表中没有的城市,就在列表中加入该城市,并把代理设置为 1,如果有该城市,则数量加 1。

通过这种方式,就将代理在各个城市的分布情况统计完毕了。接下来就是使用 pyecharts 进 行热力图绘制了。

/3 代理热力图绘制/

有了代理在各个城市的分布情况,接下来就需要进行热力图绘制,使用 pyecharts 加载我们之前统计好的列表即可, 代码如下:

程序执行完毕后,会在当前页面生成一个名叫全国代理分布.html的网页,使用 chrome或者 firefox 打开该网页即可看到热力分布结果, 如下图所示,其中颜色越深的地方代表代理数量越多。

全国代理分布图

数据视图

统计发现,代理主要分布在东部地区,东部地区又集中分布在广州、江浙、山东一带,而西部地区几乎没有,这也从另外以角度说明了互联网硬件设施在我国发展的很不均衡,绝大多数资源集中到了东部地区。

/4 小结/

本次任务主要爬取了代理网站上的代理数据,对代理在各个城 市的分布进行了统计分析,并利用可视化的技术进行代理分布热力图绘制。主要做了以下方 面的工作:

  1. 学习使用 pyecharts 库进行数据可视化;

  2. 学习使用 cpca 库进行中文数据分词。

    得出了以下结论:

  3. 全国各地的网络代理主要分布在东部地区,东部地区又集中分布在广州、江浙、山东一带,而西部地区几乎没有,这也从一个角度说明了互联网硬件设施在我国发展的很不均衡,绝大多数资源集中到了东部地区。

  4. Python 爬虫是一项综合技能,在爬取网站的过程中能够学到很多知识,希望大家多多专研。

    如果有需要代码的小伙伴,可以在后台回复“代理”二字,即可获取。

往期精彩文章推荐:

上一篇下一篇

猜你喜欢

热点阅读