python使用form-data形式上傳文件請(qǐng)求的方法
雖然現(xiàn)在基本上都約定俗成的接口都用json形式請(qǐng)求
但是不可避免地 有些接口需要傳文件流,此時(shí)就需要用form-data形式上傳了
for.e:
存在以下接口,通過接口創(chuàng)建海報(bào)圖 但需要上傳縮略圖,
此時(shí)接口的Content-Type就不能是application/json,而是multipart/form-data;
參數(shù)格式也是以表單形式傳入
postman中設(shè)置文件流很簡(jiǎn)單 ,設(shè)置問file格式,然后就可以在本地選擇文件上傳,見下圖

實(shí)際請(qǐng)求接口就可以成功

使用python完成上方請(qǐng)求 需要明確的請(qǐng)求方式及數(shù)據(jù)類型以及上傳文件 讀取文件
import requests
import json
from requests_toolbelt.multipart.encoder import MultipartEncoder
url='http://XXX.xxx.xxx.xx:9900/api-marketing-center/poster/save'
data={'activityName':'我是個(gè)海報(bào)2',
'backgroundPicUrl':'https://xxxxx/default/f865a1aa66adfe50d005bd840e2c3356.jpg',
'copywriting':'我是個(gè)海報(bào) 看看我2',
'endTime':'2021-08-14 16:00:00',
'startTime':'2021-08-11 16:00:00',
'giftPicUrl':'https://xxxxx/file/c363c3173ac7c02393bf60018031073d.PNG',
'qrCodeUrl':'https://xxxxxx/file/c363c3173ac7c02393bf60018031073d.PNG',
'posterUrlThumbnail':'文件'
}
files = {"posterUrlThumbnail": open('C:/Users/Lenovo/Desktop/格式測(cè)試/12.PNG', "rb")}
headers={'AUTH_MERCHANTS_ID': '76',
'Authorization': 'Bearer ad8cbdf3-c827-470a-aba5-076f0f3a9628'}
r=requests.post(url=url,params=data, headers=headers,files=files)
print(r.json())
#{'code': 0, 'msg': '操作成功', 'data': None}data:輸入請(qǐng)求的參數(shù),其中需要注意上傳文件流的參數(shù)名稱
files = {"posterUrlThumbnail": open('C:/Users/Lenovo/Desktop/格式測(cè)試/12.PNG', "rb")}
posterUrlThumbnail為參數(shù)名稱用于賦值,打開文件,讀取賦值
上方使用最簡(jiǎn)單的寫死的headers,
調(diào)用requests庫(kù)的方法去請(qǐng)求
即可得到結(jié)果
當(dāng)然也可以復(fù)雜點(diǎn)封裝個(gè)登錄方法,去調(diào)用登錄,獲取token以及需要的頭部參數(shù)
總結(jié)
到此這篇關(guān)于python使用form-data形式上傳文件請(qǐng)求的文章就介紹到這了,更多相關(guān)python form-data上傳文件請(qǐng)求內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
keras讀取訓(xùn)練好的模型參數(shù)并把參數(shù)賦值給其它模型詳解
這篇文章主要介紹了keras讀取訓(xùn)練好的模型參數(shù)并把參數(shù)賦值給其它模型詳解,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-06-06
python3中利用filter函數(shù)輸出小于某個(gè)數(shù)的所有回文數(shù)實(shí)例
今天小編就為大家分享一篇 python3中利用filter函數(shù)輸出小于某個(gè)數(shù)的所有回文數(shù)實(shí)例,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2019-11-11
基于Python和MoviePy開發(fā)一個(gè)視頻管理工具
這篇文章主要為大家詳細(xì)介紹了如何基于Python和MoviePy開發(fā)一個(gè)視頻管理工具,該工具提供了視頻播放,元數(shù)據(jù)提取,格式轉(zhuǎn)換等功能,有需要的小伙伴可以了解下2025-04-04
python的pytest框架之命令行參數(shù)詳解(下)
這篇文章主要介紹了python的pytest框架之命令行參數(shù)詳解,今天將繼續(xù)更新其他一些命令選項(xiàng)的使用,和pytest收集測(cè)試用例的規(guī)則,需要的朋友可以參考下2019-06-06
教你如何識(shí)別代理IP的真實(shí)地理位置(使用Python庫(kù))
本文介紹了IP數(shù)據(jù)庫(kù)查詢、反向DNS查詢和網(wǎng)絡(luò)延遲測(cè)量三種方法,并通過案例分析和代碼實(shí)現(xiàn)展示了如何使用Python庫(kù)進(jìn)行IP地理位置查詢,需要的朋友可以參考下2024-03-03
Python函數(shù)之iterrows(),iteritems(),itertuples()的區(qū)別說明
這篇文章主要介紹了Python函數(shù)之iterrows(),iteritems(),itertuples()的區(qū)別說明,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-05-05
Python使用wxPython和PyMuPDF提取PDF頁面指定頁數(shù)的內(nèi)容
在本篇博客中,我們將探討如何使用wxPython和PyMuPDF庫(kù)創(chuàng)建一個(gè)簡(jiǎn)單的Bokeh應(yīng)用程序,用于選擇PDF文件并提取指定頁面的內(nèi)容,并將提取的內(nèi)容顯示在文本框中,需要的朋友可以參考下2023-08-08
Python實(shí)現(xiàn)將MySQL數(shù)據(jù)庫(kù)查詢結(jié)果導(dǎo)出到Excel
在實(shí)際工作中,我們經(jīng)常需要將數(shù)據(jù)庫(kù)中的數(shù)據(jù)導(dǎo)出到Excel表格中進(jìn)行進(jìn)一步的分析和處理,Python中的pymysql和xlsxwriter庫(kù)提供了很好的解決方案,下面我們就來看看具體操作方法吧2023-11-11
python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法分析
這篇文章主要介紹了python實(shí)現(xiàn)把二維列表變?yōu)橐痪S列表的方法,結(jié)合實(shí)例形式總結(jié)分析了Python列表推導(dǎo)式、嵌套、循環(huán)等相關(guān)操作技巧,需要的朋友可以參考下2019-10-10

