【问题标题】:Data Scraping using JSoup?使用 JSoup 进行数据抓取?
【发布时间】:2014-05-13 05:53:52
【问题描述】:

我想通过网络抓取从该网站获取数据。 http://www.upmandiparishad.in/commodityWiseAll.aspx

我以前用JSoup做更多的静态HTML网站,但是这个对我来说很难,因为在我得到网站上的HTML表格之前必须单击一个按钮,我不知道是否可以使用JSoup来操作按钮。

点击此按钮后,我得到一个 HTML 表格。

那么我该如何实现呢?

提前致谢

【问题讨论】:

标签: java web-scraping jsoup


【解决方案1】:

您似乎将 JSoup 用作 html 解析器,但没有用作请求/响应处理程序。 我给你两个选择:

选项 1:

  • 弄清楚当你按下那个按钮时发生了什么。按钮通常只是一个 POST 请求,因此请获取该 POST 请求的信息(Google chrome 开发工具是您的朋友)。
  • 使用 JSoup Connect interface 模拟 POST(检查 POST 方法)
  • 如你所知,使用 JSoup 解析 html 代码

选项 2:

  • 使用适当的工具来处理浏览器实例(例如Selenium Webdriver)并在网页中执行您想要的任何操作(填写表单、提交......)。
  • 进入所需网页后,获取 html 代码并将其与 JSoup 一起使用以提取您的信息。

祝你好运!

【讨论】:

    【解决方案2】:

    假设页面有很多输入标签,比如文本输入和密码,我猜你知道这一点。现在你必须传递 data("name here","value here").post() 来操作按钮。

    例子:假设这是html代码<INPUT TYPE=SUBMIT NAME="submit" VALUE="SUBMIT" ALIGN = "center">

    那么这将是您的自动化命令!

    Jsoup.connect("<url here>").userAgent("Chrome").data("submit","SUBMIT").post();
    

    【讨论】:

      猜你喜欢
      • 2013-06-01
      • 1970-01-01
      • 2013-12-31
      • 1970-01-01
      • 1970-01-01
      • 2015-07-21
      • 2015-02-27
      • 1970-01-01
      相关资源
      最近更新 更多