1
NekoHTMLパーサーを使用して、HTMLファイルを適切な形式のXML文書に解析しています。しかし、私はGPathを把握することができないので、「設定」文字列を持つテーブルを識別できます。テーブルヘッダーに一致する文字列が含まれているかどうかを確認するGPath
def parser = new org.cyberneko.html.parsers.SAXParser()
parser.setFeature('http://xml.org/sax/features/namespaces', false)
def html =
'''
<html>
<title>Hiya!</title>
</html>
<body>
<table>
<tr>
<th colspan='3'>Settings</th>
<td>First cell r1</td>
<td>Second cell r1</td>
</tr>
</table>
<table>
<tr>
<th colspan='3'>Other Settings</th>
<td>First cell r2</td>
<td>Second cell r2</td>
</tr>
</table>
'''
def slurper = new XmlSlurper(parser)
def page = slurper.parseText(html)
このサンプルでは、最初のテーブルを選択して、その中の他の行の値を反復処理できるようにする必要があります。誰かがこのGPathで私を助けてくれますか?
EDIT:横の質問 - なぜ
println page.HTML.HEAD.TITLE
印刷空の文字列は、それがタイトルを返すべきではないでしょうか?