Пример: если паук выбрасывает исключение на странице 15, он должен быть в состоянии перезапустить на странице 15.
По мере того, как я просматривал документацию по Scrapy, в разделе Задания: приостановка и возобновление темы сканирования - я запустил паука с командой, упомянутой в документе, т. Е. имя паука для сканирования -s JOBDIR = путь к каталогу
, поэтому, когда я иду в этот конкретный путь к каталогу,я вижу, что были созданы три файла, а именно: reports.queue, запросы.seen и spider.state [как в ссылке на изображение https://i.stack.imgur.com/gE7zU.png] я могу видеть, что только spider.state имеетРазмер 1 КБ и оставшиеся два файла составляют 0 КБ, но во время работы паука в папке arguments.queue будет создан файл с именем p0 , но как только паук остановится и снова запустит файл p0 в папке reports.queue удалена папка.
Когда я снова просмотрел документ, он заявил: " Запросы должны быть сериализуемы модулем pickle, чтобы сохранениеork, так что вы должны убедиться, что ваши запросы сериализуемы. "и после настройки SCHEDULER_DEBUG = TRUE в settings.py я вижу в консоли, что
[scrapy.core.scheduler] ПРЕДУПРЕЖДЕНИЕ: Невозможно сериализовать запрос:
по этой причине я не могу возобновить паук с того места, где он остановился, поскольку запросы не сериализованы?если так, как я могу сделать запросы сериализованными и заставить паука возобновить с того места, где он остановился?или есть ли другой подход, как это может быть достигнуто, ответы с примером кода будут полезны.а также любой может объяснить, для чего эти три файла, поскольку в документации по Scrapy нет объяснений.