免费ip代理网站(手把手教你用免费代理ip爬数据)

/1前言/

玩爬虫的人都躲不过各大网站的反爬虫措施。常见的通过固定时间检查一个ip地址的流量来判断用户是否是“网络机器人”,也就是所谓的爬虫。如果被识别,将面临被ip屏蔽的风险,你无法访问网站。

一般的解决办法是用代理ip抓取,但是收费的代理ip一般比较贵。网上有很多免费的代理ip网站,但是由于时效性的原因,大部分地址都无法使用。有很多维护代理ip池的教程,就是把爬取测试后可以使用的代理ip放入“代理池”,以后需要的时候再从中提取。在我看来,这种效率是比较低的,因为这种IP地址很快就会失效。


/2获取IP地址/

开始实际操作吧。

1.首先我们随便找一个免费代理ip的网站,如下图所示。



2.打开网页浏览器,分析其网页元素结构,如下图所示。



3.这是一个简单的静态网页。我们使用requests和bs4来爬下ip地址和相应的端口,如下图所示。



4.每行ip地址由五个组成




/3验证IP有效性/

这里,百度百科是目标网站。这个看似普通的网站,却有着极其严格的防爬措施。爬了几段内容后,请求失败。下面,我就以百度百科为例,演示一下如何使用免费代理ip。

1.首先,我在12306上爬下了所有的火车站名,但是没有归属地信息。

免费在线代理网站



2.然后用站名构造百度百科的url信息,分析网页元素,抓取火车站的地址信息。网页元素如下图所示:




3.因此,我们只需要设置class _ = & # 39basic info-item & # 39;在标签内容中查找“省”或“市”的字符,然后输出。最后,添加一个while True循环。当ip可以正常爬升数据时,中断环路;如果该ip被禁止,立即请求一个新的ip进行爬网。直接代码如下图所示:



4.for循环是遍历所有火车站,try是检测ip是否可用。如果没有,在except中请求一个新的ip,抓取效果如下图所示:



下一次禁止爬行动物,可以用这个方法解决。


/4结论/

基于Python网络爬虫技术,主要介绍如何从IP代理网站抓取可用IP,以及如何通过Python脚本验证IP地址的时效性。如果爬虫被禁止,可以用这个方法解决问题。

关于这篇文章的代码,边肖已经上传到了github。后台回复“IP代理”字样即可获得代码链接。如果觉得好,记得给个星!

您可以还会对下面的文章感兴趣

使用微信扫描二维码后

点击右上角发送给好友