Scrapy: Как воспроизвести результаты, не загружая HTML снова?

Загрузив HTML-код на мой жесткий диск с помощью Scrapy (например, используя встроенный Экспортер элементов с полем HTMLили сохраняя все файлы HTML в папке), как я могу использовать Scrapy, чтобы снова прочитать данные с моего жесткого диска и выполнить следующий шаг в конвейере? Есть ли что-то вроде импортера предметов?

1 ответ

Если HTML-страницы хранятся на локальном ПК, с которого вы запускаете Scrapy, вы можете очистить URI как:

file:///tmp/page1.html

используя Scrapy. В этом примере я предполагаю, что одна такая страница хранится в файле /tmp/page1.html,

Второй вариант - использовать любой способ, чтобы получить содержимое файлов и вручную создать Selector объект как это:

import scrapy

# read the content of the page into page_content variable
root_sel = scrapy.Selector(text=page_content)

Затем вы можете нормально обрабатывать root_sel например, селектор

title = root_sel.css('h1.title').extract_first()
Другие вопросы по тегам