PHP简单HTML Dom不解析某些链接

PHP简单HTML Dom不解析某些链接,php,html,curl,simple-html-dom,Php,Html,Curl,Simple Html Dom,我正在理解HTMLDOM解析器及其工作原理。我有一个障碍,我无法解析以下链接,但我可以解析根域和其他网站。有人能帮我理解为什么我不能解析这个链接吗 <?php include('simple_html_dom.php'); $base = 'http://www.stupidstudios.com/samsung-galaxy-s6/p/bbuynow'; $curl = curl_init(); curl_setopt($curl, CURLOPT_SSL_VERIFYPEER,

我正在理解HTMLDOM解析器及其工作原理。我有一个障碍,我无法解析以下链接,但我可以解析根域和其他网站。有人能帮我理解为什么我不能解析这个链接吗

<?php

include('simple_html_dom.php');

$base = 'http://www.stupidstudios.com/samsung-galaxy-s6/p/bbuynow';

$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, $base);
curl_setopt($curl, CURLOPT_RETURNTRANSFER, TRUE);
$str = curl_exec($curl);
curl_close($curl);

$html_base = new simple_html_dom();
$html_base->load($str);

foreach($html_base->find('h1') as $element) {
    echo "<pre>";
    print_r( $element );
   echo "</pre>";
}

$html_base->clear(); 
unset($html_base);

?>

当您使用浏览器代理添加/欺骗它时,它似乎起作用:


它有错误吗?没有。我想链接没有被解析。如果我尝试一个不同的链接从不同的网站它的工作。我只是好奇是什么让这个链接与众不同。如果你尝试回显$str,你会得到有趣的结果,也许它会有所帮助,但不确定……确实如此。它抛出了一个HTTP错误!HTTP错误:500
访问问题/p。原因:Jetty支持的服务器错误://
但我不知道这是什么?很好的发现!你能解释一下为什么会发生这种情况吗?@GirishKumarKaitholil这只是意味着他们在找不到浏览器代理时会阻止请求,他们只是用一个错误进行响应500@GirishKumarKaitholil除此之外,实际上,您的其他代码在该点之后工作,只需确保您始终添加/设置此选项。我理解!非常感谢您的帮助。@Girishkumarkaitholi很高兴这对您有所帮助
$base = 'http://www.flipkart.com/samsung-galaxy-s6/p/itme5z4aypvtrxmy';

$curl = curl_init($base);
curl_setopt($curl, CURLOPT_FOLLOWLOCATION, true);
curl_setopt($curl,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($curl, CURLOPT_RETURNTRANSFER, TRUE);
$str = curl_exec($curl);
curl_close($curl);

echo $str;