您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關(guān)python獲取cookie的方法的內(nèi)容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
介紹下3種python獲取cookie的方法。
(1)借助handler
這種方法也是網(wǎng)上介紹最多的一種方法,但是用起來比較麻煩
from http import cookiejar from urllib import request class Craw(): def __init__(self): self.url = '' self.headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 6.3; Win64; x64) ' \ 'AppleWebKit/537.36 (KHTML, like Gecko) Chrome/65.0.3325.162 Safari/537.36' self.headers['Content-Type'] = 'application/x-www-form-urlencoded' def getCookies(self): cookie = cookiejar.CookieJar() handler = request.HTTPCookieProcessor(cookie) opener = request.build_opener(handler) response = opener.open(self.url) cookieValue = '' for item in cookie: cookieValue += item.name + '=' + item.value + ';' self.headers['Cookie'] = cookieValue response = requests.get(url=self.url) def getVerificationCode(self): img_url = '' imgResponse = requests.get(url=img_url,headers = self.headers) #直接使用headers即可 base64_jpg = base64.b64encode(imgResponse.content) return base64_jpg
(2)使用response headers的set_cookie
import requests import re class Crawler(): def getCookie(self): response = requests.post(self.url) set_cookie = response.headers['Set-Cookie'] array = re.split('[;,]',set_cookie) cookieValue = '' for arr in array: if arr.find('DZSW_SESSIONID') >= 0 or arr.find('bl0gm1HBTB') >= 0: cookieValue += arr + ';'
(3)使用response的cookies屬性獲取
只寫getCookies方法,代碼如下:
import requests class Crawler(): def getCookie(self): response = requests.get(self.url) cookie_value = '' for key,value in response.cookies.items(): cookie_value += key + '=' + value + ';' self.headers['Cookie'] = cookie_value
感謝各位的閱讀!關(guān)于python獲取cookie的方法就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,讓大家可以學(xué)到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。