PHP loadHTML错误解决方案会产生xPath查询问题

时间:2015-07-11 13:42:25

标签: php html xpath

我在加载包含空字节的HTML方面遇到了问题,我应用了错误修复程序,如下所示:PHP DOM loadHTML() method unusual warning

问题是,现在,我在那个问题上做了任何查询"修复" HTML根本不会提供任何结果。

这就是我的所作所为:

$opts = array('http' => array('header' => 'Accept-Charset: UTF-8, *;q=0'));
$context = stream_context_create($opts);
$html=file_get_contents('http://actualidad.rt.com/ultima_hora',false,$context);
$html=mb_convert_encoding($html, 'UTF-8', mb_detect_encoding($html, 'UTF-8, ISO-8859-1', true));
$html=str_replace("\0", '', $html); //Avoid PHP BUG https://stackoverflow.com/questions/30925533/php-dom-loadhtml-method-unusual-warning
$this->dom->loadHTML($html, LIBXML_HTML_NOIMPLIED | LIBXML_HTML_NODEFDTD);
$xpath=new DOMXPath($this->dom);
$COUNTDIVS=$xpath->query('//div');

$ COUNTDIVS没有元素,而真正的HTML有一大堆div标签。

并且,代码在错误不适用的网站上运行良好。

我该如何解决?

非常感谢。

0 个答案:

没有答案