我在scrapy項目中有2個蜘蛛。他們工作得很好,併產生所需的輸出項目。當通過CrawlerRunner觸發時,從scrapy抓取檢索抓取的物品
我想在Web應用程序的後臺作業中執行這些蜘蛛。
一切安裝完畢 - 一個使用Redis的後臺作業設置的Flask應用程序 - 前端等待結果 - 一切正常。
除了我似乎無法解決如何從蜘蛛執行時得到結果項目。
我來最接近的似乎是這個問題的答案
Get Scrapy crawler output/results in script file function
,但它似乎指的是舊版本scrapy的(我使用1.4.0)和我得到棄用警告
'ScrapyDeprecationWarning:從scrapy.xlib.pydispatch導入已被棄用,並且在將來的Scrapy版本中將不再受支持。如果您只想連接信號,請使用from_crawler類方法,否則直接根據需要導入pydispatch。請參閱:https://github.com/scrapy/scrapy/issues/1762'
檢查GitHub的問題表明,這不會左右V1.1.0從工作
那麼,誰能告訴我現在該怎麼做呢?
在GitHub的問題提到說,展示瞭如何使用'from_crawler'方法連接新版Scrapy中的信號。 –
是的,沒錯,但是我從後臺作業中調用了'CrawlerRunner'。如果我將示例'@ classmethod'放在那裏,它不會被scrapy框架調用。 – freeloader