низкая производительность моего crawlspider по следующим ссылкам, обусловленным текстом страницы - PullRequest
1 голос
/ 18 января 2020

Я использую crawlspider для перехода по ссылкам, только если страница содержит несколько ключевых слов. В целом это работает, но производительность оставляет желать лучшего. Основные части кода:

класс CrawlSpider_PlainVanilla (CrawlSpider):

name = "my_crawlspider"

rules = (Rule(link_extractor=None,callback='parse_link', follow=True, process_request='filter_response'),)

и

def filter_response(self, request, response):
    my_body = response.xpath(self.my_str).re(self.my_reg)
    if my_body != []:
        return request

, где self.my_str - селектор xpath (исключая такие элементы, как meta или script) и self.my_reg - это регулярное выражение. Остальная часть кода является стандартной. Странно то, что я реализовал то же самое со стандартным scrapy.Spider и здесь производительность довольно хорошая. Буду признателен за любую подсказку, касающуюся недостатков моего кода.

С наилучшими пожеланиями

Герд

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...