DOMXPath查询错误,什么都不显示

时间:2011-11-07 15:23:07

标签: php xpath domxpath

我正在使用此代码从此站点获取一些金属名称(例如:铜,铝):http://www.kitcometals.com/。这些名称位于页面左侧的一个名为实时现货价格的表格中。

这是我的代码:

<?php
$url = "http://www.kitcometals.com/";
$html = file_get_contents($url);
$dom = new DOMDocument();
$dom->loadHTML($html);
$xp = new DOMXPath($dom);

$qs = $xp->query("//table[@dwcopytype='CopyTableRow']/tbody/tr[@class='spot']/td[@class='menuB']");
foreach($qs as $q)
{
    echo $q->textContent."<br>";
}
?>

我已经在google chrome的Xpath应用中测试了这个XPath。它已经很好地显示了该表中的每个金属名称。显示:

铜 镍 铝 锌 铅 铀

但它不适用于PHP代码。请问任何人都能解决问题吗?

1 个答案:

答案 0 :(得分:1)

您已针对浏览器的“运行时”dom测试了xpath查询。但实际文档中没有tbody元素。尝试

//table[@dwcopytype='CopyTableRow']/tr[@class='spot']/td[@class='menuB']