Пожалуйста, помогите мне решить следующий случай:Scrapy Case: инкрементальное обновление предметов
Представьте себе типичную категорию категорий. Страница со списком элементов. Когда вы нажимаете на объекты, вы попадаете на внутренние страницы. Теперь мой искатель сбрасывает все эти URL-адреса, а затем сбрасывает эти URL-адреса, чтобы получить информацию об этом элементе, проверьте, не является ли начальный URL-адрес семян как любая следующая страница. Если он есть, он перейдет на следующую страницу и сделает то же самое. Я сохраняю эти элементы в базе данных sql.
Скажем, через 3 дня появились новые itmes в URL-адресе Seed, и я хочу отказаться только от новых элементов. Возможные решения:
Во время выскабливания каждого элемента, проверить в базе данных, чтобы увидеть, если URL уже Царапины. Если это так, я просто попрошу Scrapy перестать ползать дальше. Проблема: я не хочу каждый раз запрашивать базу данных. Моя база данных будет очень большой, и она в конечном итоге сделает сканирование супер медленным.
Я пытаюсь сохранить последний очищенный URL-адрес и передать его в начале, и в тот момент, когда он находит этот last_scraped_url, он просто останавливает искатель. Невозможно, учитывая, что асинхронный характер обходных URL-адресов не очищается в том же порядке, в каком они получены от начальных URL-адресов. (я перепробовал все методы, чтобы сделать это в упорядоченно - но это вообще невозможно)
Кто-нибудь может предложить какие-либо другие идеи? Я боролся за это последние три дня.
Цените свои ответы.
Как создаются элементы в URL-адресе семян? У вас есть контроль над этим? –