以下是我需要将“标题”(例如 FILE_BYTES_WRITTEN)与第一个成功的 text() 条目相关联的 html 文档片段。
以下 xpath 在 python lxml 中效果很好:
/td[text()='FILE_BYTES_WRITTEN']/following-sibling::td
文档片段:
<td>HDFS_BYTES_READ</td>
<td align="right">4,825</td>
<td align="right">0</td>
<td align="right">4,825</td>
</tr>
<tr>
<td>FILE_BYTES_WRITTEN</td>
<td align="right">415,881</td>
<td align="right">48,133</td>
<td align="right">464,014</td>
</tr>
<tr>
<td>HDFS_BYTES_WRITTEN</td>
<td align="right">98,580,205</td>
<td align="right">2,010</td>
<td align="right">98,582,215</td>
</tr>
但是当我尝试在 Java 中执行此操作时,我的成功率较低。我不确定是否有任何 java html 解析器可以支持这一点。我目前正在使用 HtmlCleaner。