我尝试使用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。
答案 0 :(得分:0)
这通常是由连接超时引起的。
尝试设置opt:
CURLOPT_TIMEOUT => 120
答案 1 :(得分:0)
curl无法解释Javascript,如果您在浏览器中禁用javascript并导航到该页面,您可以看到curl会看到什么。如果您需要解释Javascript,那么我会使用像phantomjs这样的无头浏览器。在PHP中,您可以使用PHP PhantomJS。