構文解析を用いてhtml cybernekoを探'div'タグ
質問
が必要で、特定'div'タグのク('id')からのhtmlサイトです。構文解析のページ を使用していcyberneko.
def doc = new XmlParser( new org.cyberneko.html.parsers.SAXParser() ).parse(htmlFile)
divTag = doc.depthFirst().DIV.find{ it['@id'] == tagId }
これまで問題ないが、終わったXMLが、オリジナルコンテンツ全体の'div'タグです。Unfortunatlyできませんか。
解決
編集:対応の最初のコメントとなります。
この作品:
def html = """
<body>
<div id="breadcrumbs">
<b>
crumb1
</b>
</div>
</body>
"""
def doc = new XmlSlurper(new org.cyberneko.html.parsers.SAXParser()).parseText(html)
divTag = doc.BODY.DIV.find { it.@id == 'breadcrumbs' }
println "" << new groovy.xml.StreamingMarkupBuilder().bind {xml -> xml.mkp.yield divTag}
うcybernekoが返されてHTMLドキュメントかどうかにかかわらず、独自のマークアップしました。すなわち、docフレーバのルートとするHTMLの要素もありますから、HEAD要素になります。快適性は十分満足できます
他のヒント
これは、単純な試験に基づくノアの方舟の回答-unfortunatlyません(な)仕
def html = """
<body>
<div id="breadcrumbs">
<b>
crumb1
</b>
</div>
</body>
"""
def doc = new XmlSlurper( new org.cyberneko.html.parsers.SAXParser() ).parseText(html)
println "document: $doc"
def htmlTag = doc.DIV.find {
println "-> $it"
it['@id'] == "breadcrumbs"
}
println htmlTag
assert htmlTag
所属していません StackOverflow