1. 程式人生 > >python爬蟲系列(1.3-關於cookie的認識)

python爬蟲系列(1.3-關於cookie的認識)

一、關於http無狀態的認識

在網站中,http請求是無狀態的,也就是說第一次與伺服器連線後並且接收到伺服器的返回值的時候,就斷開連線,等第二次連線的時候,又是一個新的連線,伺服器並不知道之前連線過。cookie的出現就是解決這個問題.主要原理:

使用者第一次登陸後,伺服器給瀏覽器返回cookie,客戶端將cookie儲存在本地

使用者再次訪問的時候攜帶之前伺服器返回的cookie,伺服器會對當前使用者攜帶過來的cookie進行校驗

如果當前的cookie校驗通過後就表明當前使用者之前已經登入過,否則當前使用者之前沒登入過

在爬蟲中使用cookie的主要作用是用來模擬登入後才能訪問的網站

二、關於http.cookiejar模組的使用

1、CookieJar: 管理Http cookie的值,儲存http請求生成的cookie、向傳出的http的請求新增cookie的物件.整個cookie都儲存在記憶體中,對cookieJar例項進行辣椒回收後cookie也丟失

2、FileCookieJar: 從CookieJar派生而來,用來建立FileCookieJar例項,檢索cookie資訊並且將cookie儲存到檔案中,filename是儲存的cookie的檔名,delayload為True的時候支援延遲訪問檔案,即只有在需要時才讀物檔案或在檔案中儲存資料.

3、MozillaCookieJar:從FileCookieJar派生而來,建立與火狐瀏覽器cookie.txt相容的FileCookieJar例項

三、關於cookies的方法

1、使用requests請求庫

response = requests.get(url='')

response.cookies # 獲取全部的cookie

response.cookies.get_dict() # 將cookie以字典的方式展開