如何通过简易的编程代码完成文件上传任务?

avatar
作者
猴君
阅读量:0
``python,from flask import Flask, request,,app = Flask(__name__),,@app.route('/upload', methods=['POST']),def upload_file():, file = request.files['file'], file.save(file.filename), return "文件上传成功",,if __name__ == '__main__':, app.run(),``

文件上传的简单实现

如何通过简易的编程代码完成文件上传任务?

使用Python Flask框架进行文件上传

安装Flask

确保你已经安装了Python和pip,通过以下命令安装Flask:

 pip install flask

创建一个简单的Flask应用

创建一个名为app.py的文件,并添加以下代码:

 from flask import Flask, request, redirect, url_for, flash import os UPLOAD_FOLDER = 'uploads' ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif'} app = Flask(__name__) app.config['UPLOAD_FOLDER'] = UPLOAD_FOLDER app.secret_key = "super secret key" def allowed_file(filename):     return '.' in filename and filename.rsplit('.', 1)[1].lower() in ALLOWED_EXTENSIONS @app.route('/', methods=['GET', 'POST']) def upload_file():     if request.method == 'POST':         file = request.files['file']         if file and allowed_file(file.filename):             filename = secure_filename(file.filename)             file.save(os.path.join(app.config['UPLOAD_FOLDER'], filename))             flash('File successfully uploaded')             return redirect(url_for('upload_file'))         else:             flash('Allowed file types are txt, pdf, png, jpg, jpeg, gif')     return '''     <!doctype html>     <title>Upload new File</title>     <h1>Upload new File</h1>     <form method=post enctype=multipart/form-data>       <input type=file name=file>       <input type=submit value=Upload>     </form>     ''' if __name__ == '__main__':     app.run(debug=True)

运行应用

如何通过简易的编程代码完成文件上传任务?

在终端中,导航到包含app.py的文件夹,并运行以下命令:

 python app.py

这将启动一个本地服务器,你可以通过访问http://127.0.0.1:5000/来上传文件。

常见问题与解答

问题1:如何修改允许的文件类型?

答案:你可以在ALLOWED_EXTENSIONS集合中添加或删除你想要支持的文件扩展名,如果你想允许上传docx文件,只需将其添加到集合中:

 ALLOWED_EXTENSIONS = {'txt', 'pdf', 'png', 'jpg', 'jpeg', 'gif', 'docx'}

问题2:如何更改上传文件的保存位置?

如何通过简易的编程代码完成文件上传任务?

答案:要更改上传文件的保存位置,你需要修改UPLOAD_FOLDER变量的值,如果你想将文件保存到名为my_uploads的子目录中,可以这样设置:

 UPLOAD_FOLDER = 'my_uploads'

确保该目录在你的应用运行的目录下存在,或者在应用开始运行时创建它。

小伙伴们,上文介绍了“用简单的代码来实现文件上传”的内容,你了解清楚吗?希望对你有所帮助,任何问题可以给我留言,让我们下期再见吧。

    广告一刻

    为您即时展示最新活动产品广告消息,让您随时掌握产品活动新动态!