В общем, я пытаюсь создать приложение Django, где пользователи могли бы собирать информацию из всех постов всех групп, в которых находится пользователь FB. Я планировал запустить паука-скрапа из вида, возможно, когда нажата кнопка или так. Если вы хотите увидеть,
`(It said that I have to have a code before a pastebin link, sorry im new to SO)`
https://pastebin.com/X1PqsFHu
(обратите внимание, что паук на самом деле не так хорош, но он работает [в некоторой степени)
У меня есть планы отредактировать код, вместо получения информации, я просто импортирую модели из моего приложения Django и сохраняю их.)
поэтому я сохранил его в файл с именем scraper.py и поместил его в пакет приложения в приложении Django. Теперь, чтобы убить паука, я просто последовал за документом Scrapy. Я использовал Crawler от scrapy до модуля:
импортная терапия
из scrapy.crawler импорт CrawlerProcess
from scraper import GroupPostsSpider
def scrape(inp_email, inp_pass):
spider = GroupPostsSpider(email=inp_email, password=inp_pass)
process = CrawlerProcess({
'USER_AGENT': 'Mozilla/4.0 (compatible; MSIE 7.0; Windows NT
5.1)',
'ROBOTSTXT_OBEY': False,
})
process.crawl(spider)
process.start()
Теперь, когда я запускаю паука из проекта scrapy, он фактически запускается от начала до конца с соответствующими журналами в конце. Но когда я тестировал приведенный выше скрипт из модуля в моем приложении django, он, похоже, не обращался к другим методам, которые вызываются с помощью обратного вызова, полученного из экземпляра scrapy.Request. Ребята, вы знаете, как это решить, мне это очень нужно ...
просто дополнительная информация, я попытался снова запустить паука после его правильного закрытия. Но это говорит
Raise error.ReactorNotRestartable()
twisted.internet.error.ReactorNotRestartable
Итак, я полагаю, что это связано с твистером и гусеничным механизмом?