无法从php正确应用XPath
我使用xpath从网站提取数据,但xpath选择器有问题,假设我有以下HTML代码:无法从php正确应用XPath,php,html,xpath,Php,Html,Xpath,我使用xpath从网站提取数据,但xpath选择器有问题,假设我有以下HTML代码: <div id="_parent"> <div class="my"> Hi! <p>I am a child!</p> <span class="someclass">I am a <b>span</b> child!</span> </div> </d
<div id="_parent">
<div class="my">
Hi!
<p>I am a child!</p>
<span class="someclass">I am a <b>span</b> child!</span>
</div>
</div>
我应该得到:
<div class="my">
Hi!
<p>I am a child!</p>
<span class="someclass">I am a <b>span</b> child!</span>
</div>
在Chrome中,我打开控制台并在其中输入:
document.evaluate( "//div[@class='my']", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null ).singleNodeValue;
那么我得到的是:
<div class="my">
Hi!
<p>I am a child!</p>
<span class="someclass">I am a <b>span</b> child!</span>
</div>
你好
我是个孩子
我是一个孩子!
因此XPath表达式实际上可以按预期工作。因此我推断,应用XPath表达式的方式一定是错误的。但是,您没有向我们展示应用XPath表达式的代码?共享您的XPath//div[@class='my']好的。它应该返回您的
div
,而不仅仅是文本内容。您使用的工具是什么?如何使用?显示您的代码我正在使用带有$node=$xpath->query(//div[@class='my'],$z)的domxpath;在php中。请帮助我,你们是xpath专家,我从过去两个小时开始在网上搜索。我添加了所有有问题的代码。谢谢,但我使用的是PHPDOS这项工作<代码>$xpath=newdomxpath($doc)$entries=$xpath->query('//div[@class='my'])代码>
document.evaluate( "//div[@class='my']", document, null, XPathResult.FIRST_ORDERED_NODE_TYPE, null ).singleNodeValue;
<div class="my">
Hi!
<p>I am a child!</p>
<span class="someclass">I am a <b>span</b> child!</span>
</div>