我正在解析 HTML 并尝试获取父节点本身的值,而不获取子节点的值。
HTML 示例:
<html>
<body>
<div>
<a href="http://intro.com">extra stuff</a>
Text I would like to get.
<a href="http://example.com">link to example</a>
</div>
</body>
</html>
Code:
def tagsoupParser = new org.ccil.cowan.tagsoup.Parser()
def slurper = new XmlSlurper(tagsoupParser)
def htmlParsed = slurper.parseText(stringToParse)
println htmlParsed.body.div[0]
然而上面的代码返回:
我想要得到的额外内容文本。链接到示例
如何仅获取父节点值而不获取子节点值?例子:
我想得到的文字。
附:
我尝试通过执行子字符串来删除额外的元素,但事实证明它是不可靠的。
如果您切换到使用XmlParser
代替XmlSlurper
, 你可以做:
println htmlParsed.body.div[0].localText()[0]
假设你是在 Groovy 2.3+ 上 http://docs.groovy-lang.org/latest/html/api/groovy/util/Node.html#localText()
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)