У моего паука серьезная утечка памяти. Через 15 минут запустите его память 5gb, и scrapy сообщает (используя prefs()), что 900k запрашивает объекты и все. Что может быть причиной такого большого количества объектов живых запросов? Запрос только поднимается и не опускается. Все остальные объекты близки к нулю.
Мой паук выглядит следующим образом:
class ExternalLinkSpider(CrawlSpider):
name = 'external_link_spider'
allowed_domains = ['']
start_urls = ['']
rules = (Rule(LxmlLinkExtractor(allow=()), callback='parse_obj', follow=True),)
def parse_obj(self, response):
if not isinstance(response, HtmlResponse):
return
for link in LxmlLinkExtractor(allow=(), deny=self.allowed_domains).extract_links(response):
if not link.nofollow:
yield LinkCrawlItem(domain=link.url)
Здесь вывод prefs()
HtmlResponse 2 oldest: 0s ago
ExternalLinkSpider 1 oldest: 3285s ago
LinkCrawlItem 2 oldest: 0s ago
Request 1663405 oldest: 3284s ago
Память на 100 тыс. царапаемых страниц может достигать отметки в 40 гб на некоторых сайтах (например, на сайте victorinox.com он достигает 35 ГБ памяти со скоростью 100 тыс. скрещенных страниц). На других его гораздо меньше.
UPD.