[英]Python http post a file using request library
我必須將一個文件和一些數據發布到api。 這是我為測試編寫的python代碼:
fl={'payload' : open('C:/data/log2.txt')}
params = {
'topic':'pos',
'store':storeID,
}
r = requests.post(url,files=fl,data=params)
print r.status
print r.text
但我總是收到一條消息說“文件格式不正確”
我用POSTMAN測試了api(chrome擴展到測試休息API),它似乎與postman一起工作得到成功的響應並且文件被發送,這是一個快照。
>>> url = 'http://httpbin.org/post'
>>> files = {'file': open('report.xls', 'rb')}
>>> r = requests.post(url, files=files)
>>> r.text
{
...
"files": {
"file": "<censored...binary...data>"
},
...
}
嘗試將'rb'
添加到open語句,以便上載二進制數據。
更改
fl={'payload' : open('C:/data/log2.txt')}
至
fl={'payload' : open('C:/data/log2.txt', 'rb')}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.