<?PHP // Report all PHP errors (see changelog) error_reporting(E_ALL); include('inc/simple_html_dom.PHP'); //base url $base = 'https://play.google.com/store/apps'; //home page HTML $html_base = file_get_html( $base ); //get all category links foreach($html_base->find('a') as $element) { echo "<pre>"; print_r( $element->href ); echo "</pre>"; } $html_base->clear(); unset($html_base); ?>
我有上面的代码,我正在尝试获取Play商店页面的某些元素,但它没有返回任何内容.是否有可能在服务器上禁用某些PHP功能来阻止它?
上面的代码在其他网站上完美运行.
有没有解决方法?
正如我所说,你的例子对我来说很好……但是尝试使用curl这样做:
//base url $base = 'https://play.google.com/store/apps'; $curl = curl_init(); curl_setopt($curl,CURLOPT_SSL_VERIFYPEER,FALSE); curl_setopt($curl,CURLOPT_HEADER,false); curl_setopt($curl,CURLOPT_FOLLOWLOCATION,true); curl_setopt($curl,CURLOPT_URL,$base); curl_setopt($curl,CURLOPT_REFERER,CURLOPT_RETURNTRANSFER,TRUE); $str = curl_exec($curl); curl_close($curl); // Create a DOM object $html_base = new simple_html_dom(); // Load HTML from a string $html_base->load($str); //get all category links foreach($html_base->find('a') as $element) { echo "<pre>"; print_r( $element->href ); echo "</pre>"; } $html_base->clear(); unset($html_base);
它按预期获得所有链接: