【问题标题】:Web scraping, screen scraping, data mining tips? [closed]网页抓取、屏幕抓取、数据挖掘技巧? [关闭]
【发布时间】:2011-05-04 01:08:26
【问题描述】:

我正在做一个项目,我需要进行大量的屏幕抓取以尽可能快地获取大量数据。我想知道是否有人知道任何好的 API 或资源来帮助我。

顺便说一句,我正在使用 java。

到目前为止,我的工作流程如下:

  1. 连接到网站(使用来自 Apache 的 HTTPComponents)
  2. 网站包含一个包含一堆我需要访问的链接的部分(使用内置的 Java HTML 解析器来确定我需要访问的所有链接是什么,这是烦人且混乱的代码)
  3. 访问我找到的所有链接
  4. 对于我访问的每个链接,我需要提取更多数据,分散在多个页面上,因此我可能需要访问更多链接

想法:

  • 有谁知道比内置 java 更高级别/更智能的 html 解析器?
  • 基本上是深度优先搜索。我想我想在某个时候使这个多线程,这样我就可以并行访问其中一些链接。
  • 也许我真正想要的是一个多线程网络爬虫库

如果您还没有弄清楚,这是我第一次搞砸这个,所以我很难准确地表达我的需求。如果您之前做过这件事的任何人提供任何意见,我将不胜感激。

【问题讨论】:

标签: java screen-scraping html-parsing data-mining web-scraping


【解决方案1】:

我发现 JSoup 非常适合 HTML 解析。

如需更多指点,请查看这篇文章:How to write a multi-threaded webcrawler

【讨论】:

    【解决方案2】:

    我使用Bixo 提取超链接和图像进行深度搜索。它建立在 hadoop 和级联之上,因此有一个学习曲线,但提供的示例足以配置更改...

    【讨论】:

      【解决方案3】:

      尝试使用Web-Harvest 项目。

      【讨论】:

        【解决方案4】:

        为工作管理检查 JSR-237,这是多线程时的一个很酷的想法。

        至于抓取,有几种选择。如果易用性是最重要的,我建议您使用 HTMLUnit。除此之外,你必须自己动手

        【讨论】:

          猜你喜欢
          • 2013-11-05
          • 1970-01-01
          • 1970-01-01
          • 2010-10-10
          • 1970-01-01
          • 1970-01-01
          • 1970-01-01
          • 2010-10-25
          • 2011-08-03
          相关资源
          最近更新 更多