您的位置:首页 >新闻资讯

php代理ip访问网站

来源:本站 作者:admin 时间:2019-05-14 15:13:17

网络上很多用户提问PHP如何使用代理IP,这里就简单发表一下自己的真知灼见,希望对大家有帮助。


 php代理ip访问网站


在使用之前,我们需要对IP进行验证,因为网络中的代理IP数量很大,但是能用的往往却是很少,所以在使用之前对代理IP进行剔除,以便提高我们的工作效率。通过PHP中curl函数设置代理,再访问百度或者其他能访问到的网站,通过返回的状态码是否等于200来判断代理IP是不是可以正常使用的。调用GetHttpStatusCode(代理IP地址:端口)方法就能返回该代理IP在访问百度首页时所返回的状态码,在需要的地方对状态码进行判断就能加以利用了。在数据表中加入了抓取到代理IP的时间和代理IP被验证的时间,已经存活的时间,这样代理IP的稳定性就一目了然了。这是验证后的结果,整整100个IP,最后就剩下10个左右,看来在使用之前对代理IP进行验证还是很有必要的。

 

接下来说一下如何使用代理IP访问网站。这里使用的是CURL库访问代理。

 

$curl=curl_init();

 

curl_setopt($curl,CURLOPT_URL, "http://www.gzkangyun.com/");

 

curl_setopt($curl,CURLOPT_HEADER,1);

 

curl_setopt($curl,CURLOPT_RETURNTRANSFER,1);

 

curl_setopt($curl,CURLOPT_POST,1);

 

curl_setopt($curl,CURLOPT_PROXYTYPE,CURLPROXY_SOCKS5);//使用了SOCKS5代理

 

curl_setopt($curl, CURLOPT_PROXY, "ip:1080");

 

$data=array('user'=> "geek", 'password'=> 'fuck');

 

curl_setopt($curl, CURLOPT_POSTFIELDS, $data);

 

//curl_setopt($curl, CURLOPT_HTTPPROXYTUNNEL, 1);如果是HTTP代理

 

//curl_setopt($curl, CURLOPT_COOKIEJAR, 'cookie.txt');cookie你懂的

 

$request=curl_exec($curl);

 

//var_dump($request);

 

curl_close($curl);

相关文章内容简介
推荐阅读