參考『逆風的薔薇』的教程,《python3爬蟲》-登入知乎
關於fiddler的https抓包的設定說明,可以參考fiddler設定
請求報頭如下:
登入**如下:
報頭原始資訊如下:
回應報文如下:
# 解壓縮函式
defungzip
(data):
try:
print('正在解壓...')
data = gzip.decompress(data) # compress壓縮字串,decompress解壓字串
print('解壓完畢...')
except:
print('未經壓縮,無需解壓...')
return data
# 構造標頭檔案
# 讀取知乎首頁內容,獲取_xsrf
defgetxsrf
(data):
cer = re.compile(r'name="_xsrf" value="(.*)"') # 生成乙個正規表示式物件
strlist = cer.findall(data)
return strlist[0]
# 根據**報頭資訊設定headers
headers =
url = ''
req = urllib.request.request(url, headers=headers)
res = urllib.request.urlopen(req) # method仍為get
# 讀取知乎首頁內容,獲得_xsrf
data = res.read()
data = ungzip(data)
_xsrf = getxsrf(data.decode('utf-8'))
opener = getopener(headers)
# post資料接收和處理的頁面(我們要向這個頁面傳送我們構造的post資料)
url += 'login/phone_num'
# 根據fiddler確定登入的url
# url += '#login'
name = '********'
password = '********'
# 分析構造post資料
postdict =
# 給post資料編碼
postdata = urllib.parse.urlencode(postdict).encode('utf-8')
# 構造請求
res = opener.open(url, postdata)
data = res.read()
# req = urllib.request.request(url, data=postdata, headers=headers)
# res1 = urllib.request.urlopen(req)
# data = res1.read()
# 解壓縮
Python3 學習札記(一)
作為一名不合格的電氣汪,程式設計基礎較為薄弱,之前僅簡單接觸過c和matlab。最近對python有點兒興趣,天天胡亂的敲 知識不成體系,效率不高也沒有針對性,因此想在這裡記錄下自己的學習過程,不然不出一周指定全忘光!參考 逆風的薔薇 的教程,python3爬蟲 簡單網頁抓取 三引號可以用來表示多行...
python 學習札記(3)
1.列表和元組 列表和元組可以被當成普通的 陣列 但是能儲存任意數量任意不同型別 的python物件,通過從0開始的數字索引訪問元素 可以和字串一樣使用切片運算 得到子集。列表和元組的區別 1 列表使用 列表元素的個數和值可以被改變 alist 1,2,3,4,python alist 0 1 al...
Python學習札記
1 strip 去除字串中所有不想要的空白符,split 方法建立乙個列表。2 sorted bif支援複製排序。3 分片,列表推導 4 工廠函式去除掉裡列表中重複的項。5 定義乙個類時,實際上是在定義乙個定製工廠函式。6 使用dict 工廠函式或使用 可以建立乙個空字典。要訪問乙個person字典...