欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python requests模塊cookie實例解析

 更新時間:2020年04月14日 09:32:38   作者:酌三巡  
這篇文章主要介紹了Python requests模塊cookie實例解析,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下

cookie并不陌生,與session一樣,能夠讓http請求前后保持狀態(tài)。與session不同之處,在于cookie數(shù)據(jù)僅保存于客戶端。requests也提供了相應(yīng)到方法去處理cookie。

python requests模塊-session中,我們知道了requests中的session對象能夠在請求之間保持cookie,它極大地方便了我們?nèi)ナ褂胏ookie。當(dāng)我們想設(shè)置方法級別中的請求時,可以如下面示例一樣操作。

import requests
s = requests.session()
# 第一步:發(fā)送一個請求,用于設(shè)置請求中的cookies
cookies = dict(cookies_are='cookie1')
# tips: http://httpbin.org能夠用于測試http請求和響應(yīng)
r1 = s.get(url='http://httpbin.org/cookies', cookies=cookies)
print(r1.text)
# 第二步:發(fā)送一個請求,用于再次設(shè)置請求中的cookies
cookies = dict(cookies_are='cookie2')
r2 = s.get(url='http://httpbin.org/cookies', cookies=cookies)
print(r2.text)

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

# r1.text
{
 "cookies": {
  "cookies_are": "cookie1"
 }
}
# t2.text
{
 "cookies": {
  "cookies_are": "cookie2"
 }
}

從結(jié)果中可以看出,該方法讓cookie只作用了單個請求,因為方法級別的參數(shù)不會被跨請求保持,這是requests中session對象的機(jī)制,這里不再贅述。那么,如果我們想跨請求保持cookie呢?這里依舊可以應(yīng)用session對象的跨請求機(jī)制,方法如下:

import requests
s = requests.session()
s.cookies.update({'cookies_are': 'cookie'})
r = s.get(url='http://httpbin.org/cookies')
print(r.text)

值得一提的是,除了直接用字典去賦值cookie之外,requests還提供了RequestsCookieJar對象供我們使用,它的行為類似字典,但接口更為完整,適合跨域名跨路徑使用。來看一個官方文檔中的示例。

import requests
jar = requests.cookies.RequestsCookieJar()
jar.set('tasty_cookie', 'yum', domain='httpbin.org', path='/cookies')
jar.set('gross_cookie', 'blech', domain='httpbin.org', path='/elsewhere')
url = 'http://httpbin.org/cookies'
r = requests.get(url, cookies=jar)
print(r.text)

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

{
 "cookies": {
  "tasty_cookie": "yum"
 }
}

從結(jié)果中,可以看出我們利用RequestsCookieJar對象,達(dá)到了根據(jù)不同請求路徑,發(fā)送不同cookie的效果,進(jìn)一步增加了操作cookie的靈活性。

參考文檔

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

https://requests.readthedocs.io/en/master/user/quickstart/#cookies

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。

相關(guān)文章

  • python matplotlib.pyplot.plot()參數(shù)用法

    python matplotlib.pyplot.plot()參數(shù)用法

    這篇文章主要介紹了python matplotlib.pyplot.plot()參數(shù)用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-04-04
  • 使用Python實現(xiàn)繪制地圖的示例詳解

    使用Python實現(xiàn)繪制地圖的示例詳解

    這篇文章主要為大家詳細(xì)介紹了如何使用Python實現(xiàn)繪制地圖相關(guān)知識,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下
    2024-01-01
  • Python爬蟲beautifulsoup4常用的解析方法總結(jié)

    Python爬蟲beautifulsoup4常用的解析方法總結(jié)

    今天小編就為大家分享一篇關(guān)于Python爬蟲beautifulsoup4常用的解析方法總結(jié),小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧
    2019-02-02
  • Python變量教程之全局變量和局部變量

    Python變量教程之全局變量和局部變量

    這篇文章主要介紹了Python變量教程之全局變量和局部變量,文章圍繞主題展開詳細(xì)的晌午內(nèi)容介紹,具有一定的參考價值,需要的小伙伴可以參考一下
    2022-08-08
  • Python實現(xiàn)打地鼠游戲

    Python實現(xiàn)打地鼠游戲

    這篇文章主要為大家詳細(xì)介紹了Python利用Pygame模塊實現(xiàn)簡單打地鼠游戲,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2021-12-12
  • python圖像填充與裁剪/resize的實現(xiàn)代碼

    python圖像填充與裁剪/resize的實現(xiàn)代碼

    這篇文章主要介紹了python圖像填充與裁剪/resize,本文通過示例代碼給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下
    2022-08-08
  • Django項目如何給數(shù)據(jù)庫添加約束

    Django項目如何給數(shù)據(jù)庫添加約束

    這篇文章主要介紹了Django項目如何給數(shù)據(jù)庫添加約束,幫助大家更好的理解和學(xué)習(xí)使用Django框架,感興趣的朋友可以了解下
    2021-04-04
  • Python繪制股票移動均線的實例

    Python繪制股票移動均線的實例

    今天小編就為大家分享一篇Python繪制股票移動均線的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2019-08-08
  • python使用numpy讀取、保存txt數(shù)據(jù)的實例

    python使用numpy讀取、保存txt數(shù)據(jù)的實例

    今天小編就為大家分享一篇python使用numpy讀取、保存txt數(shù)據(jù)的實例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2018-10-10
  • python將logging模塊封裝成單獨模塊并實現(xiàn)動態(tài)切換Level方式

    python將logging模塊封裝成單獨模塊并實現(xiàn)動態(tài)切換Level方式

    這篇文章主要介紹了python將logging模塊封裝成單獨模塊并實現(xiàn)動態(tài)切換Level方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-05-05

最新評論