在使用Java解析之前,请执行单击Web页面元素

时间:2013-01-14 13:07:55

标签: java html jsoup

我正在尝试用dom解析器和jsoup库解析html页面。 我面临的问题是:

在网站上有两个按钮,显示两个不同的表格。 我需要解析单击第二个按钮时显示的表格。 然后设置不同的属性值。

当我做Jsoup.connect("example.com")

我得到第一个按钮的响应,我不需要那些数据。

有没有办法执行点击第二个按钮,然后开始解析并从网站检索数据?

3 个答案:

答案 0 :(得分:3)

Jsoup只是一个解析器,即无法处理点击按钮等事件。看看浏览器自动化工具(例如Selenium)来执行此类工作。

答案 1 :(得分:2)

JSoup无法控制网页,只能解析内容。对于操纵和交互,有一些工具。我推荐Geb,它使用带有类似JQuery语法的Groovy DSL,使其非常流畅。使用它解析xml / html也很容易。

答案 2 :(得分:1)

JSoup是一个HTML解析器,而不是浏览器替代品。看看Html Unit

  

HtmlUnit是“用于Java程序的GUI-Less浏览器”。它模拟HTML文档,并提供一个API,允许您调用页面,填写表单,单击链接等...就像在“普通”浏览器中一样。