CURL没有提供完整的HTML内容

时间:2013-05-15 18:28:00

标签: php curl

我尝试使用PHP中的CURL解析购物网站网页 网址是:http://computers.pricegrabber.com/printers/HP-Officejet-Pro-8600-Plus-All-One-Wireless-Inkjet-Printer/m916995235.html/zip_code=97045/sort_type=bottomline
这是我使用的代码。

function getWebsiteCURL($url)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($ch, CURLOPT_FRESH_CONNECT, true);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
$output = curl_exec($ch);
curl_close($ch);

return $output;
}

echo getWebsiteCURL("http://computers.pricegrabber.com/printers/HP-Officejet-Pro-8600-Plus-All-One-Wireless-Inkjet-Printer/m916995235.html/zip_code=97045/sort_type=bottomline");

它有效,但我无法获得完整的HTML代码。
有谁知道为什么? TIA。

2 个答案:

答案 0 :(得分:0)

这通常是由连接超时引起的。

尝试设置opt:

CURLOPT_TIMEOUT => 120

答案 1 :(得分:0)

curl无法解释Javascript,如果您在浏览器中禁用javascript并导航到该页面,您可以看到curl会看到什么。如果您需要解释Javascript,那么我会使用像phantomjs这样的无头浏览器。在PHP中,您可以使用PHP PhantomJS