qq:800819103
在线客服,实时响应
qq群
在线客服,实时响应
客服电话
13318873961如何用php定时验证代理IP是否可用?用php先搭建网络爬虫,今天就利用上次爬到的http代理IP讲一讲代理IP的验证。至于为什么说PHP是世界上最好的语言,我也不知道,听别人说的,我个人比较喜欢java,以后有机会与大家分享我的学习之路。
我们为什么需要对代理IP进行验证呢?要知道我们在网络中抓到的代理IP数量很大,但能用的往往连十之一二都不到,在使用前剔除掉不能用的代理IP就能提高我们的工作效率。
首先说说思路:上次我们已经将抓到的IP和端口都放进了我们的MySQL数据表中,要验证肯定需要取出来,然后通过PHP中curl函数设置代理,再访问百度或者其他能访问到的网站,通过返回的状态码是否等于200来判断代理IP是不是可以正常使用的。
由于代码太长,一些不必要的代码就不贴出来了,下面看看curl验证代理IP的核心代码。
//代理IP验证方法
functionGetHttpStatusCode($proxy){$curl=curl_init();curl_setopt($curl,CURLOPT_PROXY,$proxy);
//使用代理访问
curl_setopt($curl,CURLOPT_URL,"");
//获取内容
urlcurl_setopt($curl,CURLOPT_HEADER,1);
//获取http头信息
curl_setopt($curl,CURLOPT_NOBODY,1);
//不返回html的body信息
curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);
//返回数据流,不直接输出
curl_setopt($curl,CURLOPT_TIMEOUT,5);
//超时时长,单位秒
curl_exec($curl);$rtn=curl_getinfo($curl,CURLINFO_HTTP_CODE);
curl_close($curl);return$rtn;}
调用GetHttpStatusCode(代理IP地址:端口)方法就能返回该代理IP在访问百度首页时所返回的状态码,在需要的地方对状态码进行判断就能加以利用了。
我在数据表中加入了抓取到代理IP的时间和代理IP被验证的时间,已经存活的时间,这样代理IP的稳定性就一目了然了。
这是验证后的结果,整整100个IP,最后就剩下10个左右,看来在使用之前对代理IP进行验证还是很有必要的。
推荐阅读:如何选择更好代理IP?
相关文章内容简介
1 如何用php定时验证代理IP是否可用
如何用php定时验证代理IP是否可用?用php先搭建网络爬虫,今天就利用上次爬到的http代理IP讲一讲代理IP的验证。至于为什么说PHP是世界上最好的语言,我也不知道,听别人说的,我个人比较喜欢java,以后有机会与大家分享我的学习之路。 我们为什么需要对代理IP进行验证呢?要知道我们在网络中抓到的代理IP数量很大,但能用的往往连十之一二都不到... [阅读全文]
最新标签
推荐阅读
17
2018-12
大规模采集数据会引起什么问题
数据采集看起来比较简单,因为Python也不是很难学,跟着框架写爬虫,实现从网站抓取数据是一件非常简单的事情,即使只懂Python一些知识,也能很好的实现爬取数据。
22
2019-02
使用代理IP突破网站IP限制的方法
要想使用python爬虫来爬取数据,前提是需要突破网站的反爬虫,因为爬虫采集速度快,对网站的影响非常大,并会对服务器造成很大的压力,因此大部分网站都是设有大大小小的爬虫,即使不能
23
2018-11
需要经常换IP,有没有性价比高的代理IP软件
对于代理IP,大家了解多少?许多人都是用免费的代理IP,或者是低廉的代理IP,其使用效果相当的差,于是换来换去都没有找到一款好用的代理IP,小编为大家推荐一款性价比高的代理IP软件。
24
2018-12
怎么修改手机代理设置?手机代理IP与动态IP设置
代理,可以突破网络限制,进行加速,并能隐藏我们的IP,越来越多的人开始使用代理,比如说爬虫使用代理突破IP限制,做网络营销可以通过换IP实现多账号登陆,游戏也可以多开,等等。
热门文章