PHP中的cURL不检索响应
问题描述:
我试图从PHP中的另一个网站加载一个页面,这样我就可以抓取它的内容。这适用于几乎任何其他网页,但由于某些原因,它不与这一个工作:PHP中的cURL不检索响应
有人知道为什么吗?它是防火墙还是什么? 或知道另一种方式去做这件事?即使在另一种语言?
下面是我使用的卷曲代码:
$ch = curl_init();
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_URL, $theurl);
$response = curl_exec($ch);
curl_close($ch);
我已经试过这些卷曲选项:
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_TIMEOUT, 5);
curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false);
curl_setopt($ch, CURLOPT_PORT , *ports 22 and 433*);
**知道任何其他端口来试试呢?或者找出主机正在使用哪个端口的方法?我正试图通过可能的端口循环。
我试图获取信息,并在这里是我得到了什么:
$info = curl_getinfo($ch);
print_r($info);
回报
Array ([url] => http://www.bkstr.com/webapp/wcs/stores/servlet/CourseMaterialsResultsView?catalogId=10001&categoryId=9604&storeId=10161&langId=-1&programId=562&termId=100022286&divisionDisplayName=Stanford&departmentDisplayName=CS&courseDisplayName=103§ionDisplayName=01 [content_type] => [http_code] => 0 [header_size] => 0 [request_size] => 289 [filetime] => -1 [ssl_verify_result] => 0 [redirect_count] => 0 [total_time] => 0.602861 [namelookup_time] => 0.226121 [connect_time] => 0.285047 [pretransfer_time] => 0.285149 [size_upload] => 0 [size_download] => 0 [speed_download] => 0 [speed_upload] => 0 [download_content_length] => 0 [upload_content_length] => 0 [starttransfer_time] => 0.602824 [redirect_time] => 0)
感谢一大堆!
答
我现在意识到Web管理员一定不能启用CORS。为了抓取页面,我编写了一个Java bot,它在我的浏览器中加载了页面并将其保存到一个文件中。凌乱,但它最终的工作...
+0
IMacros也不错。这些网址参数是什么? – ArtisticPhoenix 2014-07-11 00:21:30
看起来像网站已关闭或无法访问这里也可以解释它?该网站可能确实是防火墙。 – ChrisR 2011-12-20 08:02:00
我有'curl:(56)Recv失败:连接重置peer'所以我认为它的问题在那里的网站。 – piotrekkr 2011-12-20 08:04:55
网站也在这里(荷兰)。这将解释很多:) – Oldskool 2011-12-20 08:21:34