在html中:
<form action="/addCar" method="post" enctype="multipart/form-data">
many inputs (text, email, etc)
<input type="file" accept="image/*" name="files[]">
<input type="file" accept="image/*" name="files[]">
<input type="file" accept="image/*" name="files[]">
<input type="file" accept="image/*" name="files[]">
<input type="file" accept="image/*" name="files[]">
</li>
</form>
如何发送多个文件(python请求)?我用:
files = {
'files[]': open('img/1.jpg', 'rb'),
'files[]': open('img/2.jpg', 'rb')
}
session = requests.session()
headers = {'User-Agent' : 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/30.0.1599.101 Safari/537.36'}
r = session.post(site, car_dict, headers=headers, allow_redirects=True, files=files)
但它只上传2.jpg
。怎么解决?
感谢。
答案 0 :(得分:4)
你要覆盖这些名字。区别对待:
files = {
'file1': open('img/1.jpg', 'rb'),
'file2': open('img/2.jpg', 'rb')
}
或者把它放在一个清单中:
files = {
'files': [open('img/1.jpg', 'rb'), open('img/2.jpg', 'rb')]
}