python實現(xiàn)文件+參數(shù)發(fā)送request的實例代碼
需求:
該接口,含兩個參數(shù),一個是file,一個是paperName。其中file為上傳的文件。content-type為form-data。
根據(jù)python中的request源代碼,可知,發(fā)送一個request,可以傳遞的參數(shù)有很多。而我們這次主要用到的就是files,當然method、url、headers、及data/json也是每次發(fā)送request必備的。
主要的實現(xiàn)方式:
# 用二進制的方式打開需上傳的文件。 f = open(filename, "rb") file = [ ("file", (filename, f, "file/xlsx")) # 此處"file"為上傳的參數(shù)名;filename可以為當前目錄下的文件(僅文件名即可),也可以是其他目錄下的文件(用相對路徑) ]
實現(xiàn)代碼:
f = open(filename, "rb") file = [ ("file", (filename, f, "file/xlsx")) ] filename = '../data/required_upload.xlsx' # 此處寫的是放在data目錄下的文件。如果是當前目錄下的,直接'required_upload.xlsx'即可 response = request(method=method, url=url, headers=headers, files=file, data=data) f.close()
總結(jié)tips:
1. 以二進制的方式打開文件,文件可以是file / img
2. 文件名如果非當前目錄,則應使用相對路徑
3. 發(fā)送請求結(jié)束后,應立刻關閉文件
6. content-type為form-data,request語句中應注意是data=data,若content-type為application/json等,則是json=data
4. 試著去讀一讀看看源碼
5. 如果多次需要上傳文件,不妨把#主要實現(xiàn)方式#里的代碼封裝起來,方便以后調(diào)用
到此這篇關于python實現(xiàn)文件+參數(shù)發(fā)送request的文章就介紹到這了,更多相關python發(fā)送request內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
python與mysql數(shù)據(jù)庫交互的實現(xiàn)
這篇文章主要介紹了python與mysql數(shù)據(jù)庫交互的實現(xiàn),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧2020-01-01詳解Python的Twisted框架中reactor事件管理器的用法
這篇文章主要介紹了詳解Python的Twisted框架中reactor事件管理器的用法,Twisted是一款高人氣的異步Python開發(fā)框架,需要的朋友可以參考下2016-05-05Python3+pycuda實現(xiàn)執(zhí)行簡單GPU計算任務
GPU的加速技術在深度學習、量子計算領域都已經(jīng)被廣泛的應用。這篇文章就來和大家聊聊Python3如何利用pycuda執(zhí)行簡單GPU計算任務?,感興趣的可以了解一下2023-03-03