python - Scrapy如何得到原始的start_url
問題描述
Scrapy爬蟲時,由于重定向或是其他原因,會導(dǎo)致原始的start_url發(fā)生改變,怎樣才能得到原始的start_url?
def start_requests(self): start_url = ’your_scrapy_start_url’ yield Request(start_url, self.parse) def parse(self, response): item = YourItem() item[’start_url’] = 原始請求的start_url yield item
問題解答
回答1:參考文章:Scrapy爬蟲常見問題總結(jié)
利用Request中的meta參數(shù)傳遞信息
def start_requests(self): start_url = ’your_scrapy_start_url’ yield Request(start_url, self.parse, meta={’start_url’:start_url}) def parse(self, response): item = YourItem() item[’start_url’] = response.meta[’start_url’] yield item
相關(guān)文章:
1. 在mybatis使用mysql的ON DUPLICATE KEY UPDATE語法實現(xiàn)存在即更新應(yīng)該使用哪個標(biāo)簽?2. 哭遼 求大佬解答 控制器的join方法怎么轉(zhuǎn)模型方法3. mysql儲存json錯誤4. mysql - 怎么生成這個sql表?5. mysql - 數(shù)據(jù)庫表中,兩個表互為外鍵參考如何解決6. Navicat for mysql 中以json格式儲存的數(shù)據(jù)存在大量反斜杠,如何去除?7. sql語句 - 如何在mysql中批量添加用戶?8. mysql - 表名稱前綴到底有啥用?9. 編輯成功不顯示彈窗10. 怎么php怎么通過數(shù)組顯示sql查詢結(jié)果呢,查詢結(jié)果有多條,如圖。
