亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

Python requests模塊session代碼實(shí)例

瀏覽:25日期:2022-07-30 09:57:29

http協(xié)議本身是無(wú)狀態(tài)的,為了讓請(qǐng)求之間保持狀態(tài),有了session和cookie機(jī)制。requests也提供了相應(yīng)的方法去操縱它們。

requests中的session對(duì)象能夠讓我們跨http請(qǐng)求保持某些參數(shù),即讓同一個(gè)session對(duì)象發(fā)送的請(qǐng)求頭攜帶某個(gè)指定的參數(shù)。當(dāng)然,最常見(jiàn)的應(yīng)用是它可以讓cookie保持在后續(xù)的一串請(qǐng)求中。

下面,通過(guò)官方文檔中的示例來(lái)了解如何使用它。

import requestss = requests.Session()# 第一步:發(fā)送一個(gè)請(qǐng)求,用于設(shè)置請(qǐng)求中的cookies# tips: http://httpbin.org能夠用于測(cè)試http請(qǐng)求和響應(yīng)s.get(’http://httpbin.org/cookies/set/sessioncookie/123456789’)# 第二步:再發(fā)送一個(gè)請(qǐng)求,用于查看當(dāng)前請(qǐng)求中的cookiesr = s.get('http://httpbin.org/cookies')print(r.text)

運(yùn)行結(jié)果

{ 'cookies': { 'sessioncookie': '123456789' }}

從結(jié)果中我們可以看出,第二次請(qǐng)求已經(jīng)攜帶上了第一次請(qǐng)求所設(shè)置的cookie,即通過(guò)session達(dá)到了保持cookie的目的。示例中創(chuàng)建了一個(gè)requests.Session()對(duì)象,通過(guò)該對(duì)象來(lái)進(jìn)行http請(qǐng)求操作,該操作基本類(lèi)似于requests.request()

由于session讓請(qǐng)求之間具有了連貫性,那么,就有了跨請(qǐng)求參數(shù)和非跨請(qǐng)求參數(shù)的區(qū)別。即有時(shí)我想讓所有請(qǐng)求均帶有某個(gè)參數(shù),而有時(shí)我只是想讓單獨(dú)的一條請(qǐng)求帶上臨時(shí)的參數(shù)。通過(guò)下面的例子來(lái)了解如何使用。

import requestss = requests.Session()s.headers.update({’x-test’: ’true’})# both ’x-test’ and ’x-test2’ are sentr1 = s.get(’http://httpbin.org/headers’, headers={’x-test2’: ’true’})print(r1.text)# ’x-test’ is sentr2 = s.get(’http://httpbin.org/headers’)print(r2.text)

運(yùn)行結(jié)果

# r1.text{ 'headers': { 'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.22.0', 'X-Amzn-Trace-Id': 'Root=1-5e91656f-b99f14a4d6f47f9e55a90bb4', 'X-Test': 'true', 'X-Test2': 'true' }}# r2.text{ 'headers': { 'Accept': '*/*', 'Accept-Encoding': 'gzip, deflate', 'Host': 'httpbin.org', 'User-Agent': 'python-requests/2.22.0', 'X-Amzn-Trace-Id': 'Root=1-5e91656f-e9741db4c2ca2fd6e0628396', 'X-Test': 'true' }}

從結(jié)果中我們可以得出兩條結(jié)論:

session可以為請(qǐng)求方法提供缺省數(shù)據(jù),比如第一次請(qǐng)求中的{’x-test’: ’true’}就是缺省數(shù)據(jù),此時(shí)的缺省數(shù)據(jù)就是跨請(qǐng)求參數(shù)。方法級(jí)別的參數(shù)不會(huì)被跨請(qǐng)求保持,比如第二次請(qǐng)求時(shí),沒(méi)有攜帶headers={’x-test2’: ’true’},返回的結(jié)果中也沒(méi)有{’x-test2’: ’true’},說(shuō)明該參數(shù)沒(méi)有在第一次請(qǐng)求后被保持住。

參考資料

https://github.com/psf/requests/blob/master/requests/sessions.py

https://requests.readthedocs.io/en/master/user/advanced/#session-objects

以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Python 編程
相關(guān)文章:
主站蜘蛛池模板: 国产呦系列 | 国产免费精彩视频 | 色视频免费网站 | 日韩 欧美 亚洲国产 | 欧美精品不卡 | 国产一级高清视频 | 黄免费在线观看 | 热99re国产久热在线 | 正在播放国产夫妻 | 亚洲一区免费在线 | 国内精品福利视频 | 伊人这里只有精品 | 成熟热自由日本语亚洲人 | 青草悠悠视频在线观看 | 久久久噜噜噜久久中文字幕色伊伊 | 免费大片在线观看www | 久久国产三级 | 麻豆91国语视频 | 日本色网址 | 有人有片的观看免费视频 | 一级α一级α片免费观看网站 | 狠狠插入视频 | 91在线老王精品免费播放 | 特级一级毛片视频免费观看 | 亚洲啪啪| 中国一级黄色大片 | 国产午夜精品福利久久 | 免费国产黄 | 真实国产乱子伦精品一区二区三区 | 久久怡红院亚欧成人影院 | 亚洲国产日韩在线人成蜜芽 | 亚洲欧美综合乱码精品成人网 | 91日本在线精品高清观看 | 天天色综合图片 | 欧日韩视频 | 亚洲精品国产拍拍拍拍拍 | 特黄又硬又大又粗又长 | 99re九精品视频在线视频 | 黄色一级大片儿 | 日本热久久 | 欧美成人免费高清网站 |