我正在使用QueryPath来操作页面DOM。我正在操作的页面有一些QueryPath不知道如何解释的标记。
我尝试将以下内容作为选项传递,但仍然收到错误:
ignore_parser_warnings
use_parser (html)
在启用这些功能的情况下,我得到了以下错误:
Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: Tag nobr invalid in Entity
Warning: DOMDocument::loadHTML() [domdocument.loadhtml]: htmlParseEntityRef: expecting ';' in Entity
任何帮助都将不胜感激。
发布于 2010-10-21 20:10:52
试试libxml functions
libxml_use_internal_errors(TRUE);
$dom->load('whatever'); // or whatever you use for loading the DOM
libxml_clear_errors();不只是清除错误,您可以选择处理它们,尽管上面的操作对于大多数情况应该足够了。
发布于 2012-05-23 10:47:08
使用htmlqp()而不是qp()。htmlqp()函数对讨厌的超文本标记语言做了大量的修复。
发布于 2011-03-24 18:30:30
只需在QueryPath函数前面使用@就可以取消警告。虽然无效的HTML可能会生成警告,但它通常可以很好地处理它。
https://stackoverflow.com/questions/3987239
复制相似问题