[英]Uploading multiple files using Python request over a REST API call
我可以使用以下代碼上傳單個文件:
import requests
notes = {'notes_pdf':'notes1.pdf','name':'notes_name1'}
url = "https://www.example.in/notes/api/v1/uploadNotes"
files = {'notes_pdf': open(notes['notes_pdf'], 'rb')}
response = requests.request("POST", url, params=querystring, files=files, data=notes)
return response.json()
現在,我想發送多個文件,並且外部REST API接受以下格式的notes對象。
multiple_notes = [{'notes_pdf':'notes1.pdf','name':'notes_name1'}, {'notes_pdf':'notes2.pdf','name':'notes_name2'}]
我無法以這種方式發送對象。 任何幫助將不勝感激。 謝謝。
我不知道此API接受相同的文件對象名稱嗎? 如果您的API接受文件名,例如notes1.pdf
notes2.pdf
,則可以使用以下代碼:
file_list = [note['notes_pdf'] for note in multiple_notes] # get file name
files = {}
for file in file_list:
files[file]=open(file, 'rb')
res = requests.post(url, files=files, ...)
如果您要使用所述的notes[0]['notes_pdf']
和notes[1]['notes_pdf']
,則應該可以使用:
multiple_notes = ({'notes_pdf':'notes1.pdf','name':'notes_name1'},
{'notes_pdf':'notes2.pdf','name':'notes_name2'})
根據請求文檔,您可以在POST請求中使用元組。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.