作者thelibertine (玩乐者)
看板PHP
标题[请益] curl抓网页的问题
时间Wed Jan 8 02:07:10 2014
请教版上的各位大大
最近我用curl在抓
http://www.books.com.tw/ 这个网站的资料
我主要是想抓商品的资料
所以我用
http://www.books.com.tw/products/0010618102
类似这样的网址,只去改变後面那段数字用回圈去跑
当然如果跑到没有这笔资料的编号就会跳过
有这笔资料就会撷取下来
一切都非常的顺利
但是当跑连续一小段时间,大概300~400笔资料後
网站的回应时间就会变得非常的长,不知道是什麽缘故呢?
是不是此网站有防止同一个ip在短时间连续的造访?
我的curl参数如下
$options = array(CURLOPT_URL => '
http://www.books.com.tw/products/'.$booksId,
CURLOPT_HEADER => false,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_USERAGENT => "Google Bot",
CURLOPT_CONNECTTIMEOUT=>1,
CURLOPT_FOLLOWLOCATION => true
);
curl_setopt_array($ch, $options);
$dataString = curl_exec($ch);
不知道有什麽办法可以让抓取资料的时间不要突然变长?
可能的原因是什麽呢?该如何调整?
还是有其他的方式可以去抓取资料
还麻烦各位指教,谢谢!
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.32.172.148
1F:推 alog:.....爬资料请考量站方 01/08 02:42
2F:推 alog:持续性的Request 封包不是被网页伺服器作掉 就是firewall挡了 01/08 02:45
3F:→ MOONRAKER:去别人家里干他资料 就不要想多简单惬意了 01/08 08:25
4F:→ lyforever:那就抓250 然後停一段时间 再继续抓250 ... 01/08 15:44
5F:→ thelibertine:感谢大家的建议!^^ 01/08 16:46