python實現(xiàn)文件+參數(shù)發(fā)送request的實例代碼
需求:
該接口,含兩個參數(shù),一個是file,一個是paperName。其中file為上傳的文件。content-type為form-data。
根據(jù)python中的request源代碼,可知,發(fā)送一個request,可以傳遞的參數(shù)有很多。而我們這次主要用到的就是files,當(dāng)然method、url、headers、及data/json也是每次發(fā)送request必備的。
主要的實現(xiàn)方式:
# 用二進(jìn)制的方式打開需上傳的文件。f = open(filename, 'rb')file = [ ('file', (filename, f, 'file/xlsx')) # 此處'file'為上傳的參數(shù)名;filename可以為當(dāng)前目錄下的文件(僅文件名即可),也可以是其他目錄下的文件(用相對路徑)]
實現(xiàn)代碼:
f = open(filename, 'rb')file = [ ('file', (filename, f, 'file/xlsx')) ]filename = ’../data/required_upload.xlsx’ # 此處寫的是放在data目錄下的文件。如果是當(dāng)前目錄下的,直接’required_upload.xlsx’即可response = request(method=method, url=url, headers=headers, files=file, data=data)f.close()
總結(jié)tips:
1. 以二進(jìn)制的方式打開文件,文件可以是file / img2. 文件名如果非當(dāng)前目錄,則應(yīng)使用相對路徑3. 發(fā)送請求結(jié)束后,應(yīng)立刻關(guān)閉文件6. content-type為form-data,request語句中應(yīng)注意是data=data,若content-type為application/json等,則是json=data4. 試著去讀一讀看看源碼5. 如果多次需要上傳文件,不妨把#主要實現(xiàn)方式#里的代碼封裝起來,方便以后調(diào)用
到此這篇關(guān)于python實現(xiàn)文件+參數(shù)發(fā)送request的文章就介紹到這了,更多相關(guān)python發(fā)送request內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. 用xslt+css讓RSS顯示的跟網(wǎng)頁一樣漂亮2. ASP.NET MVC把數(shù)據(jù)庫中枚舉項的數(shù)字轉(zhuǎn)換成文字3. 《CSS3實戰(zhàn)》筆記--漸變設(shè)計(一)4. 測試模式 - XSL教程 - 55. Ajax實現(xiàn)異步加載數(shù)據(jù)6. 教你JS更簡單的獲取表單中數(shù)據(jù)(formdata)7. ASP.NET Core自定義中間件的方式詳解8. html5手機觸屏touch事件介紹9. CSS3實現(xiàn)動態(tài)翻牌效果 仿百度貼吧3D翻牌一次動畫特效10. 讓chatgpt將html中的圖片轉(zhuǎn)為base64方法示例
