php采集遇到对方限制IP怎么办
其实常用的有三种:伪造来源、伪造ip、再者就是用代理。这三种方法curl都可以办到:
<?php//第一、伪造来源HTTP_REFERER$ch = curl_init(); //初始化curl_setopt($ch, CURLOPT_URL, http://www.example.com/); //你要访问的页面curl_setopt($ch, CURLOPT_REFERER, http://www.example.com/); //伪造来源HTTP_REFERERcurl_setopt($chtml,CURLOPT_RETURNTRANSFER,1); //是否显示内容curl_exec($ch); //执行curl_close($ch); //返回关闭
//第二、用代理curl_setopt($ch,CURLOPT_PROXY,"http://www.domain.com");
//第三、伪造ipcurl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8')); //构造IP
使用代理服务器进行采集,你可以在网络上找一批代理服务器ip地址,然后采集的时候使用这些代理ip进行轮换,采集的时候注意时间间隔等,尽可能模拟正常用户的行为,不过使用代理服务器速度可能会慢些。你也可以多使用一些adsl,当无法采集的时候,重新拨号,换个IP地址就行了。总之,如果限制IP的话,你只能依靠更换IP地址的方式来进行采集。
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
暂无简介
文章 0 评论 0
接受
发布评论
评论(2)
其实常用的有三种:伪造来源、伪造ip、再者就是用代理。这三种方法curl都可以办到:
<?php
//第一、伪造来源HTTP_REFERER
$ch = curl_init(); //初始化
curl_setopt($ch, CURLOPT_URL, http://www.example.com/); //你要访问的页面
curl_setopt($ch, CURLOPT_REFERER, http://www.example.com/); //伪造来源HTTP_REFERER
curl_setopt($chtml,CURLOPT_RETURNTRANSFER,1); //是否显示内容
curl_exec($ch); //执行
curl_close($ch); //返回关闭
//第二、用代理
curl_setopt($ch,CURLOPT_PROXY,"http://www.domain.com");
//第三、伪造ip
curl_setopt($ch, CURLOPT_HTTPHEADER, array('X-FORWARDED-FOR:8.8.8.8', 'CLIENT-IP:8.8.8.8')); //构造IP
使用代理服务器进行采集,你可以在网络上找一批代理服务器ip地址,然后采集的时候使用这些代理ip进行轮换,采集的时候注意时间间隔等,尽可能模拟正常用户的行为,不过使用代理服务器速度可能会慢些。
你也可以多使用一些adsl,当无法采集的时候,重新拨号,换个IP地址就行了。
总之,如果限制IP的话,你只能依靠更换IP地址的方式来进行采集。