一、cookie 1.requests可以自動處理cookie信息 import requests rsp = requests.get("http://www.baidu.com") #如果對方伺服器給傳送過來cookie信息,則可以同通過反饋的cookie屬性得到 #返回一個cookiejar的 ...
一、cookie
1.requests可以自動處理cookie信息
import requests rsp = requests.get("http://www.baidu.com") #如果對方伺服器給傳送過來cookie信息,則可以同通過反饋的cookie屬性得到 #返回一個cookiejar的實例 cookiejar = rsp.cookies print(cookiejar) #可以將cookiejar轉換為字典 cookiedict = requests.utils.dict_from_cookiejar(cookiejar) print(cookiedict)
二、session
1.跟伺服器端的session不是一個東西
2.模擬一次會話,從客戶端瀏覽器鏈接伺服器開始,到客戶端瀏覽器斷開
3.能讓我們跨請求保持某些參數,比如在同一個session實例發出的所有請求之間保持cookie
import requests #創建session對象,可以暴捶cookie的值 ss = requests.session() headers = {"User-Agent":"xxxxxxxxxxxxxxxxxxxxxxxxx"} data = {"name":"xxxxxxxxxxxxxxxxxxxxxx"} #此時,由創建的session管理請求,負責發出請求 ss.post("http://www.baidu.com",data=data,headers=headers) rsp = ss.get("xxxxxxxxxxxxx")
三、https請求驗證ssl證書
1.參數verify負責表示是否需要驗證ssl證書,預設是True
2.如果不需要驗證ssl證書,則設置成False表示關閉
import requests rsp1 = requests.get("https://www.baidu.com",verify=False) #如果用verify=True訪問12306,會報錯,因為它的證書有問題
四、數據提取
1.頁面解析和數據提取
(1)結構數據:現有的結構,後有的數據
例如:JSON文件(JSON Path)(轉化為Python類型進行操作)、XML文件(轉換為python類型(xmltodict)、Xpath、CSS選擇器、正則
(2)非結構化數據:先有數據,後有的結構
例如:文本文件、電話號碼、郵箱地址(通常處理此類數據,使用正則表達式)、Html文件(使用正則、Xpath、CSS選擇器)
五、源碼
Reptitle11_1_cookieAndSession.py
Reptitle11_2_SessionAnalysis.py
https://github.com/ruigege66/PythonReptile/blob/master/Reptitle11_1_cookieAndSession.py
https://github.com/ruigege66/PythonReptile/blob/master/Reptitle11_2_SessionAnalysis.py
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客園:https://www.cnblogs.com/ruigege0000/
4.歡迎關註微信公眾號:傅里葉變換,個人公眾號,僅用於學習交流,後臺回覆”禮包“,獲取大數據學習資料