К
суть такая:
задача №1. нужно краулить все страницы на сайте и на них вытаскивать внешние ссылки (ну то есть те, которые не совпадают с доменом пациента).
задача №2. заходить на внешние ссылки и парсить определенные данные.
в целом, задачи примитивные до безобразия, но я пока не понял как правильно работать со скрапи.
я застопорился на первой задаче. поскольку скрапи я буду запускать по требованию сервера, то запускаю паука через
CrawlerProcess
, а не через CLI. краулер ходит по всем внутренним ссылкам и в коллбэке правила метод parse
выдергивает все внешние ссылки. вроде все ок, но я не знаю как быть дальше))в моем представлении, окончание работы краулера должно сопровождаться итоговым объектом, с которым я могу продолжить работать в скрипте. но, как я понял, дефолтная логика скрапи другая, то есть он делает экспорт файл с объектами, верно?
в общем, как я понял, для первой задачи мне надо сделать следующее:
1. создавать
item
каждой страницы в методе parse
2. в
pipeline
вызывать process_item
под каждый item
, и в этом process_item
делать запись в бда во второй задаче уже делать селект в базе, удалять дубликаты и действовать по той же логике, что и в абзаце выше, чтобы сохранить результаты парсинга в бд.
логично или не совсем?) что бы вы поменяли, обладая опытом работы со скрапи