Scrapy Django 限制爬取链接数量

6 投票
2 回答
1223 浏览
提问于 2025-04-16 07:34

我刚刚设置好并运行了scrapy,效果很好,但我有两个(新手)问题。首先,我得说我对scrapy和爬虫网站完全是个新手。

  1. 可以限制爬取的链接数量吗?我有一个网站没有分页,只是在首页列出了很多链接(我会爬取这些链接)。我觉得爬取所有这些链接有点不太好,其实我只需要爬取前10个左右。

  2. 怎么能同时运行多个爬虫?现在我用的命令是 scrapy crawl example.com,但我还有example2.com和example3.com的爬虫。我想用一个命令同时运行我所有的爬虫,这可能吗?

2 个回答

1

这段话的来源是Shane,可以在这里找到相关内容:https://groups.google.com/forum/?fromgroups#!topic/scrapy-users/EyG_jcyLYmU

使用CloseSpider这个功能,可以让你设置一些限制。

你可以在这里查看相关文档:http://doc.scrapy.org/en/latest/topics/extensions.html#module-scrapy.contrib.closespider

我还没试过这个功能,因为我当时不需要。看起来你可能还需要在设置文件中把它作为一个扩展启用(可以在同一页面的顶部找到相关信息)。

2

对于第一个建议:不要用规则属性来提取链接和跟踪链接,应该在解析函数里写你的规则,然后使用 yield 或 return 返回 Requests 对象。

对于第二个建议:可以试试 scrapyd。

撰写回答