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

Python?requests用法和django后臺(tái)處理詳解

 更新時(shí)間:2022年03月19日 09:00:07   作者:張志強(qiáng)  
這篇文章主要給大家介紹了關(guān)于Python中requests用法和django后臺(tái)處理的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下

1、requests 的常見用法

requests 除了 url 之外,還有 params, data 和 files 三個(gè)參數(shù),用于和服務(wù)器后臺(tái)交互。

1.1、提交查詢

注意 get 只支持 params ,不支持 data 和 files。

requests.get(login_url, params={
    "user": user, 
    "password": password, 
})

1.2、提交表格

注意,requests.post既支持data,也支持params:

requests.post(form_submit_url, data={
    "user": user, 
    "password": password, 
},  params={
    "pool": pool, 
})

1.3、在提交時(shí)附加文件:

files = ["a.csv", "b.xml"]

# 注意file需要以binary形式打開。
files = [("files", (os.path.basename(file), open(file, "rb")))
         for file in files]

r = requests.post(url, files=files, data=data, params=params)

1.4、保持狀態(tài)

使用 session 保持狀態(tài),先登錄,再提交表格:

session = requests.Session()
session.get(login_url, params)
session.post(form_submit_url, data)

1.5、查看結(jié)果

最重要的是status_code、reason和content三個(gè)成員變量:

r = requests.post(url, files=files, data=data, params=params)

if r.status_code != 200:
    print(r.status_code, r.reason) # 打印出錯(cuò)信息。
else:
    print(r.content)  # 服務(wù)器返回結(jié)果

2、django 的處理

2.1、params 傳入的參數(shù)

對(duì)于 requests 通過 params 傳入的參數(shù),可以通過request.GET獲取:

def handler(request):
    return request.GET["pool"]       # 若未傳入?yún)?shù),將拋出異常
    # return request.GET.get("pool") # 當(dāng)沒有傳入該參數(shù)時(shí),返回None
    # return request.GET.get("pool", "abc") # 默認(rèn)為abc    

2.2、data 傳入的參數(shù)

對(duì)于 requests 通過 data 傳入的參數(shù),可以通過request.POST獲取:

def handler(request):
    return request.POST["user"]       # 若未傳入?yún)?shù),將拋出異常
    # return request.POST.get("user") # 當(dāng)沒有傳入該參數(shù)時(shí),返回None
    # return request.POST.get("user", "abc") # 默認(rèn)為abc   

2.3、files 傳入的參數(shù)

對(duì)于 requests 通過 files 傳入的參數(shù),可以通過request.FILES獲?。?/p>

def handler(request):
    for file in request.FILES.getlist("files"):
        name = file.name
        content = file.file.read()      # is binary
        open(name, "wb").write(content) # 保存到本地

總結(jié)

到此這篇關(guān)于Python requests用法和django后臺(tái)處理的文章就介紹到這了,更多相關(guān)requests用法和django后臺(tái)處理內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

  • Python新手們?nèi)菀追傅膸讉€(gè)錯(cuò)誤總結(jié)

    Python新手們?nèi)菀追傅膸讉€(gè)錯(cuò)誤總結(jié)

    python語言里面有一些小的坑,特別容易弄混弄錯(cuò),初學(xué)者若不注意的話,很容易坑進(jìn)去,下面我給大家深入解析一些這幾個(gè)坑,希望對(duì)初學(xué)者有所幫助,需要的朋友可以參考學(xué)習(xí),下面來一起看看吧。
    2017-04-04
  • Python的幾個(gè)高級(jí)語法概念淺析(lambda表達(dá)式閉包裝飾器)

    Python的幾個(gè)高級(jí)語法概念淺析(lambda表達(dá)式閉包裝飾器)

    本文主要記錄自己對(duì)幾個(gè)高級(jí)語法概念的理解:匿名函數(shù)、lambda表達(dá)式、閉包、裝飾器。這幾個(gè)概念并非Python特有,但本文只限于用Python做說明
    2016-05-05
  • Python詳細(xì)對(duì)比講解break和continue區(qū)別

    Python詳細(xì)對(duì)比講解break和continue區(qū)別

    這篇文章主要介紹了python循環(huán)控制語句 break 與 continue,break就像是終止按鍵,不管執(zhí)行到哪一步,只要遇到break,不管什么后續(xù)步驟,直接跳出當(dāng)前循環(huán)
    2022-06-06
  • python logging 日志輪轉(zhuǎn)文件不刪除問題的解決方法

    python logging 日志輪轉(zhuǎn)文件不刪除問題的解決方法

    最近在維護(hù)項(xiàng)目的python項(xiàng)目代碼,項(xiàng)目使用了 python 的日志模塊 logging, 設(shè)定了保存的日志數(shù)目, 不過沒有生效,還要通過contab定時(shí)清理數(shù)據(jù)
    2016-08-08
  • 解決python3中os.popen()出錯(cuò)的問題

    解決python3中os.popen()出錯(cuò)的問題

    在本篇文章里小編給大家整理的是一篇關(guān)于解決python3中os.popen()出錯(cuò)的問題的相關(guān)內(nèi)容,有興趣的朋友們可以參考下。
    2020-11-11
  • Python獲取B站粉絲數(shù)的示例代碼

    Python獲取B站粉絲數(shù)的示例代碼

    這篇文章主要介紹了Python獲取B站粉絲數(shù)的示例代碼,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下
    2021-03-03
  • Python+django實(shí)現(xiàn)簡單的文件上傳

    Python+django實(shí)現(xiàn)簡單的文件上傳

    這篇文章主要為大家詳細(xì)介紹了Python+django實(shí)現(xiàn)簡單的文件上傳的相關(guān)代碼,感興趣的小伙伴們可以參考一下
    2016-08-08
  • Python continue繼續(xù)循環(huán)用法總結(jié)

    Python continue繼續(xù)循環(huán)用法總結(jié)

    本篇文章給大家總結(jié)了關(guān)于Python continue繼續(xù)循環(huán)的相關(guān)知識(shí)點(diǎn)以及用法,有需要的朋友跟著學(xué)習(xí)下吧。
    2018-06-06
  • Python中運(yùn)行并行任務(wù)技巧

    Python中運(yùn)行并行任務(wù)技巧

    這篇文章主要介紹了Python中運(yùn)行并行任務(wù)技巧,本文給出了兩個(gè)示例,并用map來處理并行任務(wù),需要的朋友可以參考下
    2015-02-02
  • Django admin美化插件suit使用示例

    Django admin美化插件suit使用示例

    這篇文章主要介紹了Django admin美化插件suit使用示例,簡單介紹了suit的使用界面示例,官方文檔,安裝語句等相關(guān)內(nèi)容,具有一定借鑒價(jià)值,需要的朋友可以參考下。
    2017-12-12

最新評(píng)論