Python 使用 Requests 库上传文件并使用 Flask 框架接收文件
使用 Python 上传文件并接收请求
本文将介绍如何使用 Python 的 Requests 库上传文件,以及使用 Flask 框架接收上传的文件。
1. 使用 Requests 库上传文件
import requests
import json
url = 'http://localhost:20/upload'
with open('E:\显示图标文件.bat','rb') as f:
a=f.read()
print(a)
data = {'上传文件':['C://1.zip',f'{a}']}
print(data)
response = requests.post(url, data=data,timeout=10)
print(response.text)
这段代码展示了如何使用 Requests 库发送 POST 请求,将本地文件上传到指定的服务器地址。
requests.post(url, data=data,timeout=10): 使用 POST 方法向指定 URL 发送请求,将文件数据包含在data字典中。data = {'上传文件':['C://1.zip',f'{a}']}: 将文件路径和文件内容作为列表元素放入字典中,以'上传文件'作为键值。
2. 使用 Flask 框架接收上传文件
from flask import Flask, request
app = Flask(__name__)
@app.route('/upload', methods=['POST'])
def upload():
files = request.files.getlist('上传文件')
for file in files:
file.save(file.filename)
return '文件上传成功!'
if __name__ == '__main__':
app.run(host='0.0.0.0', port=20)
这段代码展示了如何使用 Flask 框架创建一个 HTTP 服务,监听 20 端口,接收来自 Requests 库发送的 POST 请求,并保存上传的文件。
@app.route('/upload', methods=['POST']): 定义一个路由,处理POST请求,URL 为/upload。files = request.files.getlist('上传文件'): 获取请求中名为'上传文件'的文件列表。file.save(file.filename): 将每个文件保存到当前目录下,文件名与上传的文件名相同。
总结
本文提供了一个简单的示例,演示了如何使用 Python 上传文件并接收请求。在实际应用中,需要根据具体情况进行调整和完善,例如:
- 对上传文件进行类型和大小验证,避免安全风险。
- 使用数据库或其他方式保存上传文件信息。
- 提供更加友好的用户界面和反馈机制。
原文地址: https://www.cveoy.top/t/topic/ogbx 著作权归作者所有。请勿转载和采集!