为什么PHP简单HTML DOM解析器获胜';找不到元素?
我正在使用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
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显示,我有什么方法可以解析它吗?