当前位置: 首页 > 面试题库 >

Web抓取,屏幕抓取,数据挖掘技巧?

巫马嘉祯
2023-03-14
问题内容

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

顺便说一下,我正在使用Java。

到目前为止,这是我的工作流程:

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

想法:

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

如果您还没有弄清楚,这是我第一次弄明白这一点,因此我很难说清楚我的需求是什么。非常感谢您之前曾经做过的任何人的投入。


问题答案:

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

有关更多指针,请查看本文:如何编写多线程网络爬虫



 类似资料:
  • 问题内容: 我想抓取并将某些网页另存为HTML。假设您爬入了数百个受欢迎的网站,只需保存它们的首页和“关于”页面。 我调查了许多问题,但都没有从网络抓取或网络抓取问题中找到答案。 我应该使用什么库或工具来构建解决方案?还是什至有一些现有的工具可以解决这个问题? 问题答案: 这里确实没有很好的解决方案。您猜对了,因为您怀疑Python可能是最好的启动方式,因为它对正则表达式的强大支持。 为了实现这样

  • 问题内容: 我正在寻找一种方法,可以根据用户在PHP中提供的URL对另一个页面进行小的预览。 我只想检索页面标题,图像(如网站徽标)以及一些文字或说明(如果有)。有没有任何外部库/类的简单方法?谢谢 到目前为止,我已经尝试过使用DOCDocument类,加载HTML并将其显示在屏幕上,但是我认为这不是正确的方法 问题答案: 我建议您考虑为此使用simple_html_dom。这将使其非常容易。 这

  • 问题内容: 所以,我的问题相对简单。我有一只蜘蛛在多个站点上爬行,我需要它按照我在代码中写入的顺序返回数据。它发布在下面。 结果以随机顺序返回,例如,返回29,然后28,然后30。我已经尝试将调度程序的顺序从DFO更改为BFO,以防万一这是问题所在,但这并没有改变。 问题答案: 定义在方法中使用的URL 。下载页面时,将为你的方法调用每个起始URL的响应。但是你无法控制加载时间-第一个起始URL可

  • 随着物联网的发展,连接到互联网的设备数量呈指数增长,物联网信息安全越来越重要。 因此,TLS逐渐成为物联网通讯的标配。但是TLS是加密传输,这给调试增加了一定的难度。 笔者最近工作中一直用到HTTPS,但是苦于wireshark只能抓取HTTP的明文数据包,无法抓取HTTPS的数据包,于是就有了这篇文章,使用wireshark抓取HTTPS的数据包. 简单介绍TLS1.2握手和协商过程 clien

  • 随着物联网的发展,连接到互联网的设备数量呈指数增长,物联网信息安全越来越重要。 因此,TLS逐渐成为物联网通讯的标配。但是TLS是加密传输,这给调试增加了一定的难度。 笔者最近工作中一直用到HTTPS,但是苦于wireshark只能抓取HTTP的明文数据包,无法抓取HTTPS的数据包,于是就有了这篇文章,使用wireshark抓取HTTPS的数据包. 简单介绍TLS1.2握手和协商过程 clien

  • 在我的硕士论文中,我正在探索通过web自动化从网站中提取数据的可能性。步骤如下: 登录网站(https://www.metal.com/Copper/201102250376) 输入用户名和密码 单击登录 将日期更改为2020年1月1日 刮取生成的表格数据,然后将其保存到csv文件中 用我电脑上的特定名称保存到特定文件夹 运行相同的序列,在同一浏览器窗口的新选项卡中下载其他材料的其他历史价格数据