人人網 cookie 儲存

2021-08-23 12:39:42 字數 2010 閱讀 2785

from day1.tuozhan_all import post,get   #匯入post,get

import json

from urllib import request, parse

# 用來儲存cookie

from http import cookiejar #cookie類的包

# 通過物件來儲存cookie

cookie_object = cookiejar.cookiejar() #相當於把cookiejar的類獲取到

# handler 對應著乙個操作

handler = request.httpcookieprocessor(cookie_object) #要把cookie傳進去 相當於製造了乙個request可以識別的handler

# httpcookieprocessor 對應的是乙個操作 將opener如果遇到有返回cookie的時候 就將cookie放到物件裡的操作

# opener 遇到有cookie的response的時候,呼叫handler內部的乙個函式,儲存到cookie_object內

opener = request.build_opener(handler)

# def store(cookie): srore內傳乙個cookie

## def check_response(response):

# if 'cookie' in response: 如果發現response 內部 有乙個東西叫cookie

# handler.store(response['cookie']) 就會去呼叫handler

# 第一步要有url

url = ''

# 構建url底下所對應的from

form =

form_bytes = parse.urlencode(form).encode('utf-8')

# response = request.urlopen(url,form_bytes) request做了乙個封裝 就變成了這一步

# opener = request.build_opener() 預設build_opener() 沒有傳任何handler 如果需要向opener裡邊傳handler 就不能用已經封裝好的

# opener.op() 所以說就要在上邊把handler傳進去

response = opener.open(url,form_bytes) #要用opener去把post替換掉

html_bytes = response.read()

# 呼叫post函式去傳送頁面

# html_bytes = post(url, form = form)

# 列印結果

# print(html_bytes) # b''

# 通過json獲取乙個字典型別

res_dict = json.loads(html_bytes.decode('utf-8'))

home_url = res_dict['homeurl']

response = opener.open(home_url) #替換掉get 因為opener已經有handler 因為cookie在handler裡面 所以就能返回正常的結果

# 用get訪問這個獲取的頁面 匯入get

# html_bytes = get(home_url)

html_bytes = response.read()

print(html_bytes.decode('utf-8')) #這時候沒有cookie 得拿到cookie

# 每次訪問**的時候cookie都可能更新 每次更新都會替換掉以前的乙個cookie

# handler 裡只能存放乙個cookie 就是訪問過的最新的乙個cookie

使用Cookie自動模擬登入並爬取人人網指定網頁

思路 獲取cookie 思路 必須宣告乙個cookiejar物件,然後利用httpcookieprocessor來構建乙個handler,最後利用bulid opener 方法構建出opener,執行open 函式即可。如下 return opener登入data login url req req...

人人網 禮品商城

似乎上人人是每天必備的活兒,哈哈!既然經常上,禮券當然也多的一公尺,從內心裡很喜歡人人的這個應用,因為只要對人人忠誠,每天堅持來看看,人人還是會給你回報的,比如禮券。禮尚往來 是中國的傳統,即使是虛擬的禮物也能拉近朋友之間的距離。今天嘗試了一下用 禮券 送禮物。可是有很多問題都是我沒想到的。這是進入...

人人網登入(一)

匯入我封裝好的檔案 python爬蟲基礎封裝函式 from import post,get import json from urllib import request,parse 儲存cookiie 通過物件儲存cookie cookie object cookiejar.cookiejar ha...