xml - 迭代不起作用,只返回一个项目

标签 xml xpath web-scraping

我想抓取论坛帖子列表及其直接 URL。挑战在于直接链接不构成帖子名称。

这是 DOM:http://i.imgur.com/9GnHyZU.png

我在结果中只能看到 1 项。以下是我写的。我的迭代逻辑是否正确?

$postTitle = $xpath->query("//tr/td[@class='row1'][3]//span[1]/text()");
$postURL = $xpath->query("//tr/td[@class='row1'][3]//a/@href");

$output = '<ul>';

foreach ($postTitle as $title) $titlesArr[] = $title->nodeValue;
foreach ($postURL as $url) $urlsArr[] = $url->nodeValue;

$nodeValues = '';

for ($i=0; $i < count($nodeValues); $i++) { 
    $output .= '<li><a target="_blank" href="' . $urlsArr[$i] . '">' . $titlesArr[$i] . '</a></li>';
}

$output .= '</ul>';

echo $output;

最佳答案

可能是因为 $nodeValues = ''。那么,$i 永远不会小于 count($nodeValues)。 尝试删除该行。

关于xml - 迭代不起作用,只返回一个项目,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23808102/

相关文章:

android - content_main.xml 和 activity_main.xml 之间的区别?

xml - 树而不是字符串的解析器组合器

php - 获取 SimpleXMLElement 的 XML 内容

xml - XPath 排除某些 XML 元素?

objective-c - Objective-C - 使用路径解析带有命名空间的 xml

java - Android 中带有文本的自定义开关

xpath - 以编程方式将 Microsoft Teams channel 中的聊天消息导出为 Word 或 pdf,无需管理员角色、权限或权限

python - 如何在 Python 中替换字符串的特定部分

caching - 是否有谷歌 API 来读取缓存内容?

php - 为什么这个正则表达式需要这么长时间才能在某些文件中找到电子邮件地址?