Python Flask如何处理文件上传

发布时间:2025-02-17 19:50:47 作者:小樊
来源:亿速云 阅读:121

在Python Flask中,处理文件上传非常简单。首先,确保已经安装了Flask库。如果没有,请使用以下命令安装:

pip install flask

接下来,创建一个简单的Flask应用,用于处理文件上传。以下是一个示例代码:

from flask import Flask, render_template, request

app = Flask(__name__)

@app.route('/')
def index():
    return render_template('index.html')

@app.route('/upload', methods=['POST'])
def upload_file():
    if request.method == 'POST':
        # 检查是否有文件部分
        if 'file' not in request.files:
            return 'No file part'
        file = request.files['file']
        # 如果用户没有选择文件,浏览器也会提交一个空的文件名
        if file.filename == '':
            return 'No selected file'
        if file:
            # 保存文件到指定目录
            file.save('/path/to/save/' + file.filename)
            return 'File uploaded and saved.'

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

在这个示例中,我们创建了一个名为upload_file的路由,它接受POST请求。当用户通过表单上传文件时,此路由将被触发。

upload_file函数中,我们首先检查请求中是否包含文件部分。然后,我们获取文件对象,并检查文件名是否为空。如果一切正常,我们将文件保存到指定的目录。

现在,我们需要创建一个HTML模板,以便用户可以上传文件。在同一目录下创建一个名为templates的文件夹,并在其中创建一个名为index.html的文件。将以下代码添加到index.html中:

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>File Upload</title>
</head>
<body>
    <h1>Upload a File</h1>
    <form action="/upload" method="post" enctype="multipart/form-data">
        <input type="file" name="file">
        <input type="submit" value="Upload">
    </form>
</body>
</html>

在这个HTML模板中,我们创建了一个简单的表单,用户可以通过该表单上传文件。注意enctype属性设置为multipart/form-data,这是处理文件上传所必需的。

现在运行Flask应用,访问http://127.0.0.1:5000/,你应该可以看到一个文件上传表单。选择一个文件并点击上传按钮,文件将被保存到你指定的目录。

推荐阅读:
  1. Python Web框架学习【Flask】
  2. python flask指的是什么

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

python

上一篇:Python Flask如何优化前端资源加载

下一篇:Flask中如何实现自动化测试

相关阅读

您好,登录后才能下订单哦!

密码登录
登录注册
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》