同時にpostとファイルアップロードの情報があまり見当たらなかったのでメモ。
postしたい値はdataに、アップロードしたいファイルはfilesにそれぞれ配列でセットすればOK。
url = 'https://xxxxxxxxxxxxxxxxxx'
data = {
'key1': 'value'
}
file = {
'file1': open('xxxx.jpg', 'rb')
}
res = requests.post(url, data=data, files=file)
print(res)
paramsをセットしても受け取り側でpost値としては受け取れないが、get値としてなら受け取ることが出来る。
params = {
'key2': 'value'
}
res = requests.post(url, data=data, files=file, params=params)
data, files, paramsパラメータの順番の決まりはない。
以下のような順番でも正しく動作する。
res = requests.post(url, params=params, files=file, data=data)