Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/81.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
为什么PHP简单HTML DOM解析器获胜';找不到元素?_Php_Html_Parsing_Dom - Fatal编程技术网

为什么PHP简单HTML DOM解析器获胜';找不到元素?

为什么PHP简单HTML DOM解析器获胜';找不到元素?,php,html,parsing,dom,Php,Html,Parsing,Dom,我正在使用PHP简单HTML DOM解析器和以下代码片段: <?php include_once('../simple_html_dom.php'); $html = file_get_html('http://old.wowhead.com/npc=8404'); if ( $html->find('div.pin')) echo 'Found'; ?> 但它根本找不到 '<div class="pin" style="left: 17.7%; top: 6

我正在使用PHP简单HTML DOM解析器和以下代码片段:

<?php
include_once('../simple_html_dom.php');

$html = file_get_html('http://old.wowhead.com/npc=8404');

if ( $html->find('div.pin'))
echo 'Found';

?>

但它根本找不到

'<div class="pin" style="left: 17.7%; top: 60.8%; "><a href="javascript:;"     style="cursor: default; "></a></div>' 
“”

元素:

我打开了您提供的链接,没有带有“pin”类的div。必须为该方法提供一个有效的元素对象

尝试将选择器更改为

$html->find('div.pad1');

在我的例子中,

我认为带有class
pin
div
元素是由JavaScript显示的,所以当你下载静态html文件时,没有这样的元素。

任何东西,你在代码中找到的元素都不在dom中。并使其成为pad2,以查看其工作情况
$html->find('div.pad2')在我的情况下,我使用$html->find('div.pad2');而不是$html->find('div.pad2');所以我排除了这个错误。两者之间的间隔对于注意正确性非常重要。如果禁用JavaScript,页面只会显示一条警告:该网站大量使用JavaScript。请在你的浏览器中启用JavaScript。如果JavaScript显示,我有什么方法可以解析它吗?