我已经使用 CURL 来获取这个 URL
$url = "http://www.juno.co.uk/all/today/?items_per_page=100&show_digital=0&show_tracks=0&show_covers=0";
$c = curl_init();
curl_setopt($c, CURLOPT_URL,"$url");
curl_setopt($c,CURLOPT_POST,true);
curl_setopt($c, CURLOPT_CONNECTTIMEOUT, 20); //give it adequate time
curl_setopt($c, CURLOPT_TIMEOUT, 50);
curl_setopt($c,CURLOPT_USERAGENT,'Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US; rv:1.8.1.13) Gecko/20080311 Firefox/2.0.0.13');
curl_setopt($c, CURLOPT_RETURNTRANSFER,1);
if(!$complete = curl_exec($c))
{
echo "Failed to curl $url\n";
}
然后我尝试使用传递到简单的html dom
$home_page = str_get_html($complete);
这会引发“PHP 致命错误:在非对象上调用成员函数 find()”错误
foreach($home_page->find('tr.row2') as $home_details)
{
//do stuff
}
当我将“items_per_page”参数更改为 50 时,它就可以工作了。上面的链接是有效的,当我回显 $complete 时,它正在显示页面代码。
simple_html_dom 在脚本中较早加载并且可以正常工作。
我试过 file_get_html 而不是 CURL 和相同的结果