1

POST 応答から HTML ファイルを読み取り、XMLSlurper で解析しています。ページの textarea ノードにはいくつかの HTML コードが含まれており (非 URL コード - 私の選択ではありません)、その値を読み取ると、Groovy はすべてのタグを削除します。

例:

<html>
    <body>
        <textarea><html><body>This has html code for some reason</body></html></textarea>
    </body>
</html>

上記を解析してから「テキストエリア」ノードを見つける(...)と、次のように返されます。

This has html code for some reason

タグはありません。タグの保管方法を教えてください。

4

1 に答える 1

2

正しいデータを取得していると思いますが、出力が間違っています... StreamingMarkupBuilder を使用して、ノードを xml に変換し直すことはできますか?

def xml = '''<html>
            |  <body>
            |    <textarea><html><body>This has html code for some reason</body></html></textarea>
            |  </body>
            |</html>'''

def ta = new XmlSlurper().parseText( xml ).body.textarea

String content = new groovy.xml.StreamingMarkupBuilder().bind {
  mkp.yield ta.children()
}

assert content == '<html><body>This has html code for some reason</body></html>'
于 2012-03-15T09:12:30.067 に答える