【发布时间】:2021-09-05 16:32:51
【问题描述】:
我是 python 和烧瓶框架的新手。我创建了一个简单的网页来使用当前工作目录中的烧瓶上传文件。但是当我尝试上传文件时,它会抛出 PermissionError: [Errno 13] Permission denied。我正在使用以下代码:
from flask import Flask, render_template, send_file, request, flash, redirect
from werkzeug.utils import secure_filename
import pathlib
import os
app = Flask(__name__)
app.secret_key = 'secret'
ALLOWED_EXTENSION = {'csv'}
@app.route("/")
def get_index():
return render_template('index.html')
@app.route("/upload-holidays", methods=['GET', 'POST'])
def upload_holidays():
if request.method == "POST":
if request.files:
current_dir = pathlib.Path().absolute()
file = request.files["file"]
file.save(current_dir, file.filename)
return redirect(request.url)
return render_template('uploadholiday.html')
if __name__ == "__main__":
app.run(debug=True)
当我尝试上传文件时,出现以下错误: 文件“C:\Users\aakas\Downloads\CalendarApp\app.py”,第 38 行,在 upload_holidays file.save(current_dir, file.filename) 文件“C:\Users\aakas\AppData\Local\Programs\Python\Python38-32\Lib\site-packages\werkzeug\datastructures.py”,第 3066 行,保存 dst = 打开(dst,“wb”) PermissionError: [Errno 13] Permission denied: 'C:\Users\aakas\Downloads\CalendarApp'
我使用的是 Windows 10 和 Pycharm 社区版。
请帮忙。 谢谢。
【问题讨论】:
-
我不确定,但如果您尝试上传的文件当前在其他应用程序中打开,则可能会出现问题。
-
以管理员身份运行 app.py。以管理员身份打开 cmd 并导航到您的项目目录并运行 app.py。
标签: python-3.x flask