Всем привет!
Я тут решил переписать свои парсеры с requests на скрапи и у меня возникло несколько вопросов, многие из которых скорее всего тут уже задавались)
1. как лучше организовать парсинг нескольких сайтов - в одном проекте несколько пауков или для каждого сайта отдельный проект?
2. как одновременно, параллельно и независимо запускать несколько пауков?
3. можно ли гарантированно (даже при сбоях) сохранять состояние парсинга? На данный момент знаю только запуск паука с параметрами scrapy crawl spidername -s JOBDIR=crawls/somename
.
4. фильтрует ли скрапи рекурсивные ссылки при рекурсивном парсинге с помощью CrawlSpider?
5. как отслеживать состояние паука (упал с ошибкой, забанили, завершился ок и т.д.)?
6. можно ли использовать единый файл requests.seen для нескольких пауков?
ну, дальнейшее сугубо мое ИМХО, и не является обязательным руководством к действию
1. а у тебя данные один и те же будут (к примеру, наполнение одного магазина из нескольких) - если да, то однозначно один проект из нескольких пауков
2. учимся гуглем пользоваться, на странице есть именно параллельный запуск
https://docs.scrapy.org/en/latest/topics/practices.html#running-multiple-spiders-in-the-same-process3. лучше сделать свой костыль, к примеру, сохранение ссылок с их состоянием в базе (по крайней мере я не знаю паблик решения)
4. если вопрос "дублирует ли скрапи дубли страниц", то "да, если хочешь одну ссылку несколько раз подряд дернуть, то скрапи надо ЗАСТАВИТЬ это сделать"
5. вроде подойдет spidermon (
https://github.com/scrapinghub/spidermon) но я сам не юзал
6. вот тут не понял вопрос :)