【问题标题】:Scraping data from website that uses javascript从使用 javascript 的网站中抓取数据
【发布时间】:2013-05-26 17:59:51
【问题描述】:

我目前正在开发一个检查大学课程可用性的程序,但该网站使用 javascript 来显示课程及其时间。使用 Java,我正在努力抓取这些数据并使用它来告诉用户何时打开类。

我尝试过使用 Selenium,但我真的不知道如何很好地使用它。有没有更简单的方法来做到这一点?

【问题讨论】:

  • Selenium 非常适合这个。如果您需要这项任务的帮助,请更具体
  • @luksch 抱歉含糊不清,我只是不知道从哪里开始。我不确定我是否应该通过 Selenium 在浏览器中打开页面,或者只是用它来抓取数据。我不熟悉网站抓取作为一个整体,所以我为我的天真道歉。
  • 对于更复杂的抓取工作,我所做的是使用 selenium 导航到相关页面,执行所有必需的点击,然后将最终页面保存为字符串,然后使用 JSoup 处理它。在您的情况下,这可能有点矫枉过正,因此您可以尝试使用 selenium 选择器直接抓取。

标签: java javascript screen-scraping


【解决方案1】:

没有具体是很难知道的。但我假设如果数据在加载时不在页面中,他们可能正在使用 AJAX 来加载它。

正如我所说,我可能假设太多,但您的问题很模糊,如果他们使用 AJAX,请检查他们所做的调用(并获得 json 响应,运气好的话),您的工作将非常容易。

【讨论】:

  • 我觉得我对这个项目有点过头了,但我相信它是 AJAX。具体来说,这是源页面view-source:sis.rutgers.edu/soc/…
  • @MikeMelchione 在浏览器中打开开发者工具并激活网络选项卡,您将能够看到所有 AJAX 请求和传递的参数,并且您应该能够反转设计您需要拨打的电话。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-01-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-07-06
相关资源
最近更新 更多