使用scrapy shell時設置cookies和headers


有時為了測試xpath,需要臨時下載個頁面,這時使用命令行進行測試是最方便的,但是很多網站頁面需要認證,不能直接使用scrapy shell命令進行頁面的抓取,所以需要重新對請求進行構造,設置cookies和headers。

首先在當前裝有scrapy的python環境中安裝ipython

# python環境下
pip install ipython
# conda環境下
conda install ipython

 首先進入scrapy shell,會自動使用ipython

scrapy shell

 

 

 

 

 

  

把cookies轉成字典格式

# 指定請求目標的 URL 鏈接
url = 'https://novel18.syosetu.com/n7016er/31/'
# 自定義 Headers 請求頭(一般建議在調試時使用自定義 UA,以繞過最基礎的 User-Agent 檢測)
headers = {'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36'}
# 構造需要附帶的 Cookies 字典
cookies = {"key_1": "value_1", "key_2": "value_2", "key_3": "value_3"}
# 構造 Request 請求對象
req = scrapy.Request(url, cookies=cookies, headers=headers)
# 發起 Request 請求
fetch(req)
# 在系統默認瀏覽器查看請求的頁面(主要為了檢查是否正常爬取到內頁)
view(response)
# 網頁響應正文 byte類型
response.body
# 網頁響應正文 str類型  
response.text  
# xpath選擇器
repsonse.xpath()  

 



原文鏈接:https://blog.csdn.net/u010741500/article/details/100974510


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM