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

梦想的初衷 提交于 2020-05-05 10:52:04

/1 前言/

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

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


/2 代理分布统计/

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



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

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



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



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

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


/3 代理热力图绘制/

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



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



全国代理分布图



数据视图

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


/4 小结/

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

  1. 学习使用 pyecharts 库进行数据可视化;
  2. 学习使用 cpca 库进行中文数据分词。

得出了以下结论:

  1. 全国各地的网络代理主要分布在东部地区,东部地区又集中分布在广州、江浙、山东一带,而西部地区几乎没有,这也从一个角度说明了互联网硬件设施在我国发展的很不均衡,绝大多数资源集中到了东部地区。
  2. Python 爬虫是一项综合技能,在爬取网站的过程中能够学到很多知识,希望大家多多专研。

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


------------------- End -------------------

往期精彩文章推荐:

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!