获取Flask中所选文件的原始位置(而非Python脚本位置)的完整文件路径

时间:2019-05-14 11:04:51

标签: python python-3.x flask

我有一个小的Flask网络应用程序,可以在其中选择要处理的文件。我需要获取此原始文件的位置。例如,如果我从“下载”文件夹中选择了一个文件,则需要获取下载文件夹路径。我尝试的所有操作仅给我当前的Python脚本目录的路径,从该目录我可以调用Flask应用程序,而我不希望这样。我的脚本在用户单击“处理文件”按钮后在后台运行,需要一个实际的文件位置。这样可以做吗?

@app.route("/", methods=['GET', 'POST'])
def index():
    if request.method == 'POST':
        file = request.files['file']
        if file and allowed_file(file.filename):
            filename = file.filename
            print(os.path.abspath(filename)) -----> this path is always 
            the path of my Python script location, not the location of 
            the actual selected file 
    return render_template('index.html')

和用于选择文件的index.html:

<form action="" method=post enctype=multipart/form-data>
      <p>
         <input type=file name=file>
         <input type=submit value='Process File'>
      </p>
</form>

带有选择文件的表单的图像:

enter image description here

0 个答案:

没有答案