需要使用Java和selenium比较2个html文档

内容来源于 Stack Overflow,并遵循CC BY-SA 3.0许可协议进行翻译与使用

  • 回答 (2)
  • 关注 (0)
  • 查看 (157)

我必须检查两个html页面之间的差异:一个是旧版本,另一个是更新页面。

我需要Selenium来获取两个页面的来源,然后比较它们以检查差异。

如何使用Java和Selenium实现这一目标?

以下是我的流程:

  • 使用Selenium转到旧页面
  • 收集旧网页的所有数据
  • 将数据转换为标准格式(可能是XML); 创建一个类来执行此操作
  • 将数据保存到文件中
  • 使用Selenium转到新页面
  • 收集新网页的所有数据
  • 将数据转换为标准格式(可能是XML); 使用您创建的类来执行此操作
  • 将数据保存到文件中
  • 使用Java库来区分这两个文件

任何人都可以提供如何实现这一点的想法/例子吗?

提问于
用户回答回答于

对每个页面使用selenium.getHtmlSource(),并比较Java中返回的字符串或将它们保存到文件中,并使用命令行工具,如“diff”。

如果使用Java,我可以想到的两种方法是使用像StringUtils.difference()(几乎肯定是一团糟)或更好的Google Diff.。Google diff有一个Java库和测试示例。

当然,这些的输出将是文字差异,您可能需要更多自定义的东西来理解HTML中的变化。

用户回答回答于

我刚刚遇到了同样的挑战,当然首先用selenium包装它以提取页面源数据然后将其保存到文件中然后使用上面的算法来实现您的目标。

扫码关注云+社区

领取腾讯云代金券