"""
python3從chrome瀏覽器讀取cookie
get cookie from chrome
"""
import os
import sqlite3
import requests
from win32.win32crypt import CryptUnprotectData
def getcookiefromchrome(host='.oschina.net'):
cookiepath=os.environ['LOCALAPPDATA']+r"\Google\Chrome\User Data\Default\Cookies"
sql="select host_key,name,encrypted_value from cookies where host_key='%s'" % host
with sqlite3.connect(cookiepath) as conn:
cu=conn.cursor()
cookies={name:CryptUnprotectData(encrypted_value)[1].decode() for host_key,name,encrypted_value in cu.execute(sql).fetchall()}
print(cookies)
return cookies
運(yùn)行環(huán)境windows 2012 server python3.4 x64 chrome 50
以下是測試代碼
getcookiefromchrome()
getcookiefromchrome('.baidu.com')
httphead={'User-Agent':'Safari/537.36',}
設(shè)置allow_redirects為真赡若,訪問http://my.oschina.net/ 可以跟隨跳轉(zhuǎn)到個(gè)人空間
r=requests.get(url,headers=httphead,cookies=getcookiefromchrome('.oschina.net'),allow_redirects=1)
print(r.text)