上传文件
HTML 表单
- 使用
file
类型输入 ,浏览器将提供一个字段,允许用户选择要上载的文件。 - 只有使用
post
方法的表单才能发送文件数据。 - 确保设置表单的
enctype=multipart/form-data
属性。否则将发送文件名,但不会发送文件的数据。 - 在输入上使用
multiple
属性可以为单个字段选择多个文件。
<form method=post enctype=multipart/form-data>
<!-- single file for the "profile" field -->
<input type=file name=profile>
<!-- multiple files for the "charts" field -->
<input type=file multiple name=charts>
<input type=submit>
</form>
Python 请求
Requests 是一个功能强大的 Python 库,用于发出 HTTP 请求。你可以使用它(或其他工具)在没有浏览器的情况下发布文件 。
- 打开要以二进制模式读取的文件。
files
有多种数据结构。这演示了一个(name, data)
元组列表,它允许多个文件,如上面的表格。
import requests
with open('profile.txt', 'rb') as f1, open('chart1.csv', 'rb') as f2, open('chart2.csv', 'rb') as f3:
files = [
('profile', f1),
('charts', f2),
('charts', f3)
]
requests.post('http://localhost:5000/upload', files=files)
这并不是一份详尽的清单。有关使用你喜欢的工具或更复杂方案的示例,请参阅该工具的文档。