Как получить доступ к определенному start_url в Scrapy CrawlSpider?
Я использую Scrapy, в частности ScrapyCrawlSpider
класс для очистки веб-ссылок, которые содержат определенные ключевые слова. У меня довольно долгоstart_urls
список, который получает свои записи из базы данных SQLite, которая связана с проектом Django. Я хочу сохранить очищенные веб-ссылки в этой базе данных.
У меня есть две модели Django, одна для начальных URL, таких какhttp://example.com
и один для очищенных веб-ссылок, таких какhttp://example.com/website1
, http://example.com/website2
и т.д. Все очищенные веб-ссылки являются дочерними сайтами одного из стартовых URL-адресов вstart_urls
список.
Модель веб-ссылок имеет отношение многие-к-одному к стартовой модели URL-адресов, то есть модель веб-ссылок имеет внешний ключ к модели стартовых URL-адресов. Для того, чтобы правильно сохранить мои очищенные веб-ссылки в базе данных, мне нужно сообщитьCrawlSpider
& APOS; sparse_item()
метод, с которого начинается ссылка на удаленную веб-ссылку. Как я могу это сделать? Scrapy & APOS; sDjangoItem
Класс не помогает в этом отношении, так как я все еще должен явно определить используемый стартовый URL.
Другими словами, как я могу передать используемый в настоящее время стартовый URL вparse_item()
метод, чтобы я мог сохранить его вместе с соответствующими скребками веб-ссылок на базу данных? Есть идеи? Заранее спасибо!