python模擬登陸,用session維持回話的實(shí)例
python模擬登陸的幾種方法
客戶端向服務(wù)器發(fā)送請求,cookie則是表明我們身份的標(biāo)志。而“訪問登錄后才能看到的頁面”這一行為,恰恰需要客戶端向服務(wù)器證明:“我是剛才登錄過的那個客戶端”。于是就需要cookie來標(biāo)識客戶端的身份,以存儲它的信息(如登錄狀態(tài))
1、先在瀏覽器中登錄,然后打開開發(fā)者選項(xiàng),找到一個請求方法為POST的請求,復(fù)制Requests Headers中的cookie在爬取需要登錄的頁面時加上此cookies即可
import requests
url = '......'
headers = {'cookies':'......'}
response = requests.get(url=url, headers=headers)
2、 模擬登錄,并用session維持會話,用requests的session模擬登錄后session會記錄cookies,接下來的請求會被放在同一個會話中。舉個簡單例子,在 requests 中,如果直接利用 get()或 post()等方法的確可以做到模擬網(wǎng)頁的請求,但是這實(shí)際 上是相當(dāng)于不同的會話,也就是說相當(dāng)于你用了兩個瀏覽器打開了不同的頁面。設(shè)想這樣一個場景,第一個請求利用 post()方法登錄了某個網(wǎng)站,第二次想獲取成功登錄后的自 己的個人信息,你又用了一次 get()方法去請求個人信息頁面。 實(shí)際上,這相當(dāng)于打開了兩個瀏覽器, 這是兩個完全不相關(guān)的會話,能成功獲取個人信息嗎?那當(dāng)然不能
import requests
'''
下面的data是先在瀏覽器中登錄,然后打開開發(fā)者選項(xiàng),找到一個請求方法為POST的請求,復(fù)制里面的Form Data
'''
url = '......'
data = {
username:'......',
password:flz_sanqianchi,
rememberMe:true,
lt:LT-82465-9HtQnC7ZASZHohtnQlrqMvXo7cI2B7,
execution:e1s1,
}
headers = {'user-agent':'Mozolla/5.0'}
'''
這里用requests的session來請求網(wǎng)頁,做到維持同一會話的目的
'''
session = requests.Session()
reqsonse = session.post(url=url, headers=headers, data=data)
'''
接下來就可以請求別的登陸后的頁面,而不需要處理cookies
'''
url2 = '這里是已經(jīng)登錄后的某一頁面'
response = session.get(url=url2, headers=headers)
以上這篇python模擬登陸,用session維持回話的實(shí)例就是小編分享給大家的全部內(nèi)容了,希望能給大家一個參考,也希望大家多多支持腳本之家。
相關(guān)文章
python將多個py文件和其他文件打包為exe可執(zhí)行文件
這篇文章主要介紹了python將多個py文件和其他文件打包為exe可執(zhí)行文件,通過準(zhǔn)備要打包的工程文件展開詳情,需要的小伙伴可以參考一下2022-05-05
python圖像處理-利用一行代碼實(shí)現(xiàn)灰度圖摳圖
這篇文章主要介紹了python圖像處理-利用一行代碼實(shí)現(xiàn)灰度圖摳圖,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-05-05
關(guān)于Tensorflow和Keras版本對照及環(huán)境安裝
這篇文章主要介紹了關(guān)于Tensorflow和Keras版本對照及環(huán)境安裝方式,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-08-08
python中關(guān)于數(shù)據(jù)類型的學(xué)習(xí)筆記
在本篇文章里小編給大家整理了關(guān)于python中關(guān)于數(shù)據(jù)類型的學(xué)習(xí)筆記內(nèi)容,需要的朋友們可以參考下。2020-07-07
Python使用captcha庫制作帶參數(shù)輸入驗(yàn)證碼案例
這篇文章主要介紹了Python使用captcha庫制作驗(yàn)證碼,帶參數(shù)輸入,本文通過實(shí)例案例解析給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2022-05-05
Jupyter?notebook運(yùn)行后打不開網(wǎng)頁的問題解決
本文主要介紹了Jupyter?notebook運(yùn)行后打不開網(wǎng)頁的問題解決,文中通過示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下2022-03-03
python密碼學(xué)一次性密碼的實(shí)現(xiàn)
這篇文章主要為大家介紹了python密碼學(xué)一次性密碼的實(shí)現(xiàn),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-05-05

