python爬蟲學習,使用requests庫來實現模擬登錄4399小遊戲網站。

1.首先分析請求,打開4399網站。

python爬蟲學習,使用requests庫來實現模擬登錄4399小遊戲網站。

右鍵檢查元素或者F12打開開發者工具。然後找到network選項,

python爬蟲學習,使用requests庫來實現模擬登錄4399小遊戲網站。

這裡最好勾選perserve log 選項,用來保存請求日誌。這時我們來先用我們的賬號密碼登陸一下,然後查看一下截獲的請求

python爬蟲學習,使用requests庫來實現模擬登錄4399小遊戲網站。

可以很清楚的看到這裡有個login,而且這個請求是post請求,下拉查看一下Form data,也就是表單數據

python爬蟲學習,使用requests庫來實現模擬登錄4399小遊戲網站。

可以很清楚的看到我們的剛才登錄發送給服務器的表單數據,更重要的是,除了uername和password之外,所有的數據都是一成不變的,這意味著我們不需要解析網頁的源碼獲得信息,只需要把用戶名和密碼提交上去就行,下面開始構建我們的代碼。

 1 import requests
2 #模擬登陸4399 成功 一定要靈活運用session()這個好東西
3 #這是我們要提交的表單
4 data={
5 'loginFrom':'uframe',
6 'postLoginHandler':'default',
7 'layoutSelfAdapting':'true',
8 'externalLogin':'qq',
9 'displayMode':'popup',
10 'layout':'vertical',
11 'appId':'www_home',
12 'mainDivId':'popup_login_div',
13 'includeFcmInfo':'false',
14 'userNameLabel':'4399用戶名',
15 'userNameTip':'請輸入4399用戶名',
16 'welcomeTip':'歡迎回到4399',
17 'username':'1252452801125',
18 'password':'1252452801'
19 }
20 headers={
21 'User-Agent':'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.131 Safari/537.36'
22 }
23 url='http://ptlogin.4399.com/ptlogin/login.do?v=1'
24 session=requests.Session()
25 res=session.post(url=url,data=data,headers=headers)
26 res2=session.get(url='http://u.4399.com/user/info',headers=headers) #成功登陸以後,查看我們的用戶數據
27 #這裡把我們的請求結果保存到文件
28 f=open('4399.html','wb')
29 f.write(res2.content)

30 f.close()

運行起來,然後查看我們保存的html文件,

python爬蟲學習,使用requests庫來實現模擬登錄4399小遊戲網站。

模擬登錄成功! 這就是我們個人用戶信息的源代碼。

這個例子主要講了requests 的post方法,用於post請求,還有很重要的session,用於維持會話

如果你對Python編程感興趣,那麼記得私信小編“007”領取全套Python資料哦。

python爬蟲學習,使用requests庫來實現模擬登錄4399小遊戲網站。


分享到:


相關文章: