文章詳情頁
python - pyspider怎樣傳遞信息給下一個函數,但是不通過url
瀏覽:115日期:2022-07-01 16:28:57
問題描述
有的時候向通過pyspider直接傳遞信息給下一個函數,但是沒有cral一個新的url的需求。
比如說,一個列表頁面某部分信息需要傳遞給下一個函數,但是不想通過列表的url傳遞。
想過用send_message的方法來做,還有就是用self.crawl的response.save來做(url隨便寫一個比較好爬的網站)但是這兩個方法都不是特別好。
請問有什么好的方法嗎。
問題解答
回答1:下一個函數已經執行結束了,它已經不存在了,你怎么傳遞傳遞信息給一個不存在的東西?
回答2:無非跳轉callback, 已出來的數據yield, 不過你還是測試一下.
def detail(self, response): next_urls = [i.attr.href for i in response.doc(’#fetch urls’)] for url in next_urls:self.crawl(url, callback=self.list_page) for i in items = [# some result]yield i
排行榜
