您好,登錄后才能下訂單哦!
這篇文章主要講解了“Python requests和django后臺處理的方法”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“Python requests和django后臺處理的方法”吧!
requests 除了 url 之外,還有 params, data 和 files 三個參數,用于和服務器后臺交互。
注意 get 只支持 params ,不支持 data 和 files。
requests.get(login_url, params={ "user": user, "password": password, })
注意,requests.post既支持data,也支持params:
requests.post(form_submit_url, data={ "user": user, "password": password, }, params={ "pool": pool, })
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)
使用 session 保持狀態,先登錄,再提交表格:
session = requests.Session() session.get(login_url, params) session.post(form_submit_url, data)
最重要的是status_code、reason和content三個成員變量:
r = requests.post(url, files=files, data=data, params=params) if r.status_code != 200: print(r.status_code, r.reason) # 打印出錯信息。 else: print(r.content) # 服務器返回結果
對于 requests 通過 params 傳入的參數,可以通過request.GET獲取:
def handler(request): return request.GET["pool"] # 若未傳入參數,將拋出異常 # return request.GET.get("pool") # 當沒有傳入該參數時,返回None # return request.GET.get("pool", "abc") # 默認為abc
對于 requests 通過 data 傳入的參數,可以通過request.POST獲取:
def handler(request): return request.POST["user"] # 若未傳入參數,將拋出異常 # return request.POST.get("user") # 當沒有傳入該參數時,返回None # return request.POST.get("user", "abc") # 默認為abc
對于 requests 通過 files 傳入的參數,可以通過request.FILES獲取:
def handler(request): for file in request.FILES.getlist("files"): name = file.name content = file.file.read() # is binary open(name, "wb").write(content) # 保存到本地
感謝各位的閱讀,以上就是“Python requests和django后臺處理的方法”的內容了,經過本文的學習后,相信大家對Python requests和django后臺處理的方法這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。