我正在使用XPath从HTML页面选择节。但是,当我使用XPath来提取节点时,它正确地只选择文本围绕 HTML标签和而不是 HTML标签本身。使用XPath抽取具有子节点的完整节点
样本HTML
<body>
<div>
At first glance you may ask, “what <i>exactly</i>
do you mean?” It means that we want to help <b>you</b> figure...
</div>
</body>
我有以下XPath
/body/div
我得到以下
At first glance you may ask, “what do you mean?” It means that we want to help figure...
我想
At first glance you may ask, “what <i>exactly</i> do you mean?” It means that we want to help <b>you</b> figure...
如果您在样本HTML注意到没有在内容<i/>
和<b />
HTML标签。当我提取内容时,这些标签中的单词会“丢失”。
我在PHP中使用SimpleXML,如果这有所作为。
我无法重现您的结果。用echo $ result(即将simplexmlelement转换为字符串)并使用 - > asXML()在输出中获得“内部”标签。你能提供实际的测试代码吗? – VolkerK 2009-10-14 14:22:50
好的,所以我转换为HTML,然后将其加载到SimpleXML中...编辑该问题以反映此问题。 – null 2009-10-14 18:07:27