有关抓取网站内容的建议

时间:2012-07-02 13:33:05

标签: java web web-crawler web-scraping jsoup

我试图使用jsoup和java组合抓取一些网站内容。将相关详细信息保存到我的数据库并每天执行相同的活动。

但是这是交易,当我在浏览器中打开网站时,我得到了html(所有元素标签都在那里)。 javascript部分,当我测试它,它工作得很好(我应该用来提取正确的数据)。

但是当我使用jsoup(来自Java类)进行解析/获取时,只下载初始网站进行解析。这意味着网站有一些动态部分,我想获得这些数据,但由于它们已经在网站上异步呈现,我无法用jsoup捕获它。

有人知道解决这个问题吗?我使用正确的工具集吗?更有经验的人,我会征求你的意见。

1 个答案:

答案 0 :(得分:4)

如果您抓取的网站要求显示所有内容,您需要先检查一下:

  • 使用登录名/密码进行身份验证
  • HTTP标头上的某种会话验证
  • 缓存
  • 加载所有内容的某种时间延迟(Javascript库,CSS和异步数据的网站可能需要这些)。
  • 特定的用户代理浏览器
  • 代理密码,例如,如果您在公司网络安全配置中。

如果需要此列表中的任何内容,您可以在jsoup.connect()中管理提供参数的数据。请参考官方文档。

http://jsoup.org/cookbook/input/load-document-from-url