Python Flask 获取File

Python Flask 获取File

Python Flask 获取File

在开发Web应用程序时,经常需要用户上传文件到服务器。Python Flask框架提供了方便的方式来处理文件上传和获取已上传的文件。本文将详细介绍如何在Python Flask中获取用户上传的文件,并对其进行处理。

上传文件

在Python Flask中,用户可以通过HTML表单上传文件到服务器。以下是一个简单的示例代码,演示如何在Flask应用程序中创建一个表单,让用户上传文件:

<!DOCTYPE html>
<html>
<head>
    <title>文件上传示例</title>
</head>
<body>
    <h1>上传文件示例</h1>
    <form action="/upload" method="post" enctype="multipart/form-data">
        <input type="file" name="file">
        <input type="submit" value="上传文件">
    </form>
</body>
</html>

在Flask应用程序中,需要编写一个路由处理函数来处理文件上传。以下是一个示例代码,演示如何接受用户上传的文件并保存到服务器:

from flask import Flask, request

app = Flask(__name__)

@app.route('/upload', methods=['POST'])
def upload_file():
    file = request.files['file']
    file.save(f'uploaded_files/{file.filename}')
    return '文件上传成功'

if __name__ == '__main__':
    app.run()

运行以上代码,用户可以通过访问网址http://127.0.0.1:5000/来上传文件。上传的文件将保存在uploaded_files文件夹中。

获取文件

一旦用户上传文件到服务器,我们可以通过Flask框架来获取这些文件并对其进行处理。以下是一个示例代码,演示如何在Flask应用程序中获取已上传的文件:

from flask import Flask, send_file

app = Flask(__name__)

@app.route('/get-file')
def get_file():
    return send_file('uploaded_files/geek-docs.com.txt', as_attachment=True)

if __name__ == '__main__':
    app.run()

在以上代码中,我们使用send_file函数来获取文件geek-docs.com.txt并以附件形式返回给用户。用户可以通过访问网址http://127.0.0.1:5000/get-file来下载文件。

在实际开发中,我们可以根据需求对获取的文件进行进一步处理,如删除、压缩、解析等操作。

总结

通过以上介绍,我们了解了如何在Python Flask中处理文件上传和获取已上传的文件。Flask框架提供了方便的方法来处理文件操作,开发者可以根据实际需求来进行扩展和定制。

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程