gpt4 book ai didi

java - 我如何将一个 "deserialize"的HTML表格数据转换成一个二维数组?

转载 作者:搜寻专家 更新时间:2023-11-01 03:43:03 24 4
gpt4 key购买 nike

我需要使用 Selenium 对两个表执行数据验证

给定一个正确标记的包含数据的 HTML 表格:

<table>
<tbody>
<tr>
<td>A</td>
<td>B</td>
<td>C</td>
</tr>

<tr>
<td>1</td>
<td>2</td>
<td>3</td>
</tr>
</tbody>
</table>

我想使用 Selenium 将该表“反序列化”(收集其数据)为二维数组 ( String[][] )。我想这样做的原因是我有另一个 HTML 表(在另一个网页上),其中包含据说存储在其中的相同数据 - 我需要在这两个表之间执行数据验证 .

我已经尝试了很多关于如何解决这个问题的选项,以及迭代的逐个单元格数据收集(使用 getTable()getText() 方法)不是其中之一 - 因为在重载的网页上完成大表格需要花费大量时间。

JavaScript 注入(inject)(使用 getEval() 方法)在我的案例中不可用,因为该表驻留在具有来源(基本 URL)的 <iframe> 中这不同于主页之一。并根据same origin policy这无法执行。

伙计们,关于如何解决给定问题有什么想法吗?

最佳答案

您可以使用 JAXB 将 HTML 文本反序列化为纯 Java 对象层次结构,然后从这些对象构造一个二维数组。

另一种选择:将文本作为 XML 解析为 org.w3c.dom.Document 并使用 XPath在 Java 中查找和迭代元素。

关于java - 我如何将一个 "deserialize"的HTML表格数据转换成一个二维数组?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10028692/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com