尝试学习 xpath 表达式。我找到了一个代码片段,并对其进行了一些调整。我想要做的是获取页面上的每个链接。
$baseurl = "http://www.example.com";
$html = file_get_contents($baseurl);
$dom = new DOMDocument();
@$dom->loadHTML($html);
$xpath = new DOMXPath($dom);
$ahrefs = $xpath->query('//a');
foreach ($ahrefs as $ahref) {
echo $ahref->childNodes->item(0)->nodeValue . "<br />";
}
但现在我正在抓取 anchor 文本。我想要 href
部分。甚至可能两者兼而有之。我做错了什么?
最佳答案
要获取 href,您必须访问 attributes节点属性
echo $ahref->attributes->getNamedItem("href")->nodeValue . "<br />";
关于php - 获取 href 的 Xpath 表达式。不仅仅是 anchor 文本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11783849/