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

Web挖掘还是抓取或抓取?我应该使用什么工具/库?

应嘉容
2023-03-14
问题内容

我想抓取并将某些网页另存为HTML。假设您爬入了数百个受欢迎的网站,只需保存它们的首页和“关于”页面。

我调查了许多问题,但都没有从网络抓取或网络抓取问题中找到答案。

我应该使用什么库或工具来构建解决方案?还是什至有一些现有的工具可以解决这个问题?


问题答案:

这里确实没有很好的解决方案。您猜对了,因为您怀疑Python可能是最好的启动方式,因为它对正则表达式的强大支持。

为了实现这样的功能,对SEO(搜索引擎优化)的深入了解会有所帮助,因为有效地优化搜索引擎网页可以告诉您搜索引擎的行为方式。我将从SEOMoz这样的网站开始。

至于识别“关于我们”页面,您只有两个选项:

a)对于每个页面,获取关于我们页面的链接,并将其提供给您的搜寻器。

b)解析页面的所有 链接 以获得某些关键字,例如“关于我们”,“关于”,“了解更多信息”或诸如此类。

在使用选项b时,要小心,因为您可能陷入无限循环,因为网站将多次链接到同一页面,尤其是如果链接位于页眉或页脚中,则页面甚至可能会链接回自身。为避免这种情况,您需要创建一个已访问链接的列表,并确保不要重新访问它们。

最后,我建议您在robot.txt文件中包含关于爬虫的说明,最好不要遵循标记rel="nofollow"为链接的链接,因为这些链接主要用于外部链接。同样,通过阅读SEO来学习更多内容。

问候,



 类似资料:
  • 问题内容: 我正在做一个项目,我需要做很多屏幕抓取工作,以尽可能快地获取大量数据。我想知道是否有人知道任何好的API或资源来帮助我。 顺便说一下,我正在使用Java。 到目前为止,这是我的工作流程: 连接到网站(使用来自Apache的HTTPComponents) 网站包含一个带有一堆我需要访问的链接的部分(使用内置的Java HTML解析器来弄清楚我需要访问的所有链接是什么,这很烦人且凌乱的代码

  • 问题内容: 是否有一个好的测试套件或工具集可以自动进行网站导航(带有Javascript支持)并从页面中收集HTML? 当然,我可以使用BeautifulSoup抓取直接的HTML。但这对需要Javascript的网站没有好处。:) 问题答案: 您可以使用Selenium或Watir来驱动真正的浏览器。 还有一些基于JavaScript的无头浏览器: PhantomJS是一款无头Webkit浏览器

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

  • 问题内容: 您如何使用Scrapy抓取返回JSON的Web请求?例如,JSON如下所示: 我将要抓取特定的项目(例如和在上面)并保存到csv。 问题答案: 这与使用Scrapy的html响应相同。唯一的区别是您应该使用模块来解析响应: 希望有帮助。

  • 我正在创建一个矿池(区块链的事情)。事情是我决定使用插件https://github.com/zone117x/node-open-mining-portal这是写在node.js和使用redis数据库节省股份,付款和诸如此类的东西。我的问题如下? 1) 我应该使用redis数据库还是将代码传输到mysql? 我的假设是:Redis速度非常快,但我担心数据丢失。如您所知,它首先将信息保存在内存中,

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