欢迎访问宙启技术站
智能推送

如何在Python中添加文件上传功能到Web表单

发布时间:2023-12-24 22:16:53

在Python中,可以使用Flask框架来添加文件上传功能到Web表单。Flask是一个轻量级的Python Web框架,非常适合用于简单的Web开发。

以下是一个使用Flask实现文件上传的例子:

1. 安装Flask框架:

   pip install flask
   

2. 创建一个名为app.py的Python文件,并导入Flask模块:

   from flask import Flask, render_template, request

   app = Flask(__name__)
   

3. 创建一个HTML模板文件index.html,用于显示文件上传表单:

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

4. 在Python文件中创建路由,将表单的提交路径指向上传函数:

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

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

5. 在Python文件中添加启动代码:

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

6. 运行Python文件,并在浏览器中访问http://localhost:5000/ 来显示上传表单。

通过以上步骤,你就可以在Flask应用中添加文件上传功能了。

在这个例子中,我们使用request.files来获取上传的文件对象,然后使用file.save()方法将文件保存在服务器上。你可以根据自己的需求来对上传的文件进行处理,例如重命名、限制文件类型等。

此外,你可以使用Flask提供的其他功能来增强文件上传功能,例如对文件大小进行限制、限制文件类型、保存文件在指定路径等。

总结起来,使用Flask框架来添加文件上传功能非常简单。你只需要在HTML中添加文件上传表单,然后在服务器端使用Flask提供的方法来处理上传的文件即可。