- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
您好,我想使用 Scrapy CrawlSpider 类 (Documentation here) 抓取 Web 的所有页面。
class MySpider(CrawlSpider):
name = 'abc.com'
allowed_domains = ['abc.com']
start_urls = ['http://www.abc.com']
rules = (
Rule(SgmlLinkExtractor(allow=('item\.php', )), callback='parse_item')
)
def parse_item(self, response):
self.log('Hi, this is an item page! %s' % response.url)
...
(1) 所以,这个蜘蛛将从 www.abc.com 页面开始,它在 start_urls 中定义,它会自动进行解析...然后跟踪 www.abc.com 中的每个链接哪个遵循规则?我想知道有没有办法让我只能抓取一定数量的层..比如只抓取第一层(链接直接来自 www.abc.com)?
(2) 因为我在 allowed_deomains 中定义了只有 abc.com url 会被抓取。所以我不需要在规则中重新定义它?并做这样的事情:
Rule(SgmlLinkExtractor(allow=('item\.php', )), allow_domains="www.abc.com", callback='parse_item')
(3)如果我使用的是crawlspider,如果不在spider类中定义规则会怎样?它会抓取所有页面吗?或者它甚至不会遵循任何一个,因为规则还没有被“满足”?
最佳答案
设置DEPTH_LIMIT设置:
DEPTH_LIMIT¶
Default: 0
The maximum depth that will be allowed to crawl for any site. If zero, no limit will be imposed.
不,您不需要添加额外的 url 检查。如果您未在 Rule
级别指定 allow_domains
,它将仅提取具有 abc.com
域的 URL。
BaseSpider
一样工作)。希望对您有所帮助。
关于python - Scrapy Crawl Spider 只爬一定层数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18901367/
现在我有2个蜘蛛,我想做的是 Spider 1 转到 url1 如果 url2 出现,用 url2, ) 它加载设置但不抓取: 2015-08-24 14:13:32 [scrapy] INFO: E
我看到在他们使用的类末尾的一些蜘蛛文件中 class TestSpider(BaseSpider): pass SPIDER = TestSpider() 为什么我们要使用 SPIDER = T
我该如何解决这个错误? mona@pascal:~/computer_vision/instagram/instagram$ scrapy crawl instagramspider 2017-03-
很抱歉重新发布,我之前帖子的标题令人困惑。在蜘蛛示例(下面的代码)中,如何使用“pyinstaller”(或其他一些安装程序)来构建可执行文件(例如myspidy.exe),以便最终用户不需要在Win
我是python和scrapy的新手。我用了这个博客里的方法Running multiple scrapy spiders programmatically在 flask 应用程序中运行我的蜘蛛程序。
我们的 Meteor 版本是 0.8.1,这意味着当我们尝试安装当前版本的 Spiderable 时它会崩溃。PhantomJS 与这种不兼容有关,因为它有一些过时的依赖项,主要是关于 BlazeLa
我需要什么: 启动爬虫 爬虫工作完成 等一分钟 再次启动爬虫 我试试这个: from scrapy.crawler import CrawlerProcess from scrapy.utils.pr
我是一名学生,我正在为一个项目收集有关品牌的信息。我找到了这个名为 Kit 的网站:Kit Page我想搜索品牌。它有将近 500 页,我用 Python 3 编写了一个 Scrapy Spider,
我更新到 Spyder 4(4.0.0?)以获得最新、最强大的功能。这时我发现Spyder现在可以选择使用Kite进行自动补全。在尝试了 Kite 一段时间后,我想恢复到以前的自动完成设置。我认为通过
下面是我组装的一个 Scrapy 蜘蛛,用于从网页中提取一些元素。我从another Stack Overflow solution借用了这个解决方案。它有效,但我需要更多。我需要能够在身份验证后遍历
情况: 我想在我的 vps ubuntu 服务器上运行一些应用程序以进行爬网测试。我的应用使用来自“atmosphere”的 meteor-router 和 mrt 包管理器。在我使用 phantom
我正在尝试在此 SO 线程中使用“warwaruk”描述的链接解析结构: Following links, Scrapy web crawler framework 这在仅从每个页面抓取单个项目时效果
我正在编写一个 scrapy 蜘蛛从主页上抓取今天纽约时报的文章,但由于某种原因它不跟踪任何链接。当我在 scrapy shell http://www.nytimes.com 中实例化链接提取器时,
我已经看过类似的问题并尝试了给出的答案但无济于事。有人可以帮我纠正这个吗? 谢谢 hepz@ubuntu:~/Documents/project/project$ scrapy crawl NewsS
大家好,我正在尝试从代码中的给定链接获取完整结果。但我的代码没有给出所有结果。这个链接说它包含 2132 个结果,但它只返回 20 个结果。: from scrapy.spider import Sp
scrapyd 文档包括以下注释: scrapyd-deploy won’t deploy anything outside the project module... 这是否意味着我不能从我的蜘蛛中
我是 python 编程和 scrapy 的新手。我在网络爬行时遇到错误。我在这个网站上使用过类似的帮助页面,甚至从头到尾遵循了一个教程,但没有成功,任何帮助将不胜感激。 错误说:蜘蛛错误处理http
因此,当我尝试从 epinions.com 抓取产品评论信息时,如果主要评论文本太长,它会有一个指向另一个页面的“阅读更多”链接。我从“http://www.epinions.com/reviews/
我已阅读Scrapy: Follow link to get additional Item data?并遵循它,但它不起作用,可能这是一个简单的错误,所以我把我的蜘蛛的源代码。 import scr
我定义了一个scrapy Spider,它可以抓取所有名字和一些故事,而定义的xpath无法捕获故事,来自https://www.cancercarenorthwest.com/survivor-st
我是一名优秀的程序员,十分优秀!