首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >抓取CrawlSpider:爬行策略/队列问题

抓取CrawlSpider:爬行策略/队列问题
EN

Stack Overflow用户
提问于 2011-11-06 11:24:18
回答 1查看 690关注 0票数 0

几天前,我从刮点开始,学习了一些特定的站点( dmoz.org示例);到目前为止,它还不错,我喜欢它。因为我想了解搜索引擎的发展,我的目标是建立一个爬虫(和存储,索引器等)的大量网站的“颜色”和内容。

到目前为止,我还尝试了深度一级和酿造一级的爬行。

我现在只使用一条规则,我设置了一些跳过的路径和一些域。

代码语言:javascript
运行
复制
Rule(SgmlLinkExtractor(deny=path_deny_base, deny_domains=deny_domains),
        callback='save_page', follow=True),

我有一个管道,一个用来存储下载页面的url、body和头的mysql存储,它是通过带有这些字段的PageItem完成的。

我现在的问题是:

  1. 可以用条目来简单地存储页面吗?如果页面已经被爬行(在过去的六个月里),爬行器检查数据库是如何工作的?
  2. 是否有类似于无用域的黑名单?占位符域、链接场等?

还有很多其他的问题,比如存储问题,但我想我要说的是,还有一个一般性的搜索引擎问题。

  • 有一种从其他专业爬虫器获取爬行结果数据的方法,当然,它必须通过发送硬盘来完成,否则,如果我自己抓取它们,数据卷将是相同的(压缩左边)。
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-11-08 05:08:32

我只想回答你的两个问题:

  1. 使用项来简单地存储页面好吗?

AFAIK,scrapy不在乎你在物品的字段里放了什么。只有你的管道才能处理它们。

如果一个页面已经被爬行了(在过去的六个月里),它是如何工作的呢?

  1. 是如何工作的?

Scrapy有重复的中间件,但它只过滤当前会话中的副本。你必须手动防止刮伤,而不是抓取你六个月前爬过的网站。

至于问题3和问题4--你不明白。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8026659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档