首页 > 解决方案 > 不存在这样的文件或目录来自服务器请求的错误

问题描述

实际上,我的烧瓶应用程序在本地主机上运行良好,但在将其部署到服务器后,我使用 pythonanywhere 部署了我的烧瓶网络应用程序,但出现了一些错误。我的动机是从输入发送文件的路径,python 获取路径并用于定位文件并对数据(excel 文件)执行一些操作,如果在本地主机上运行良好。但在服务器中它说没有文件或目录存在

address=request.form['address']
        file_location =address
        workbook = xlrd.open_workbook(file_location)
        sheet = workbook.sheet_by_index(0)
        psitrnid = int(sheet.cell_value(9,4))
        psiootid  = int(sheet.cell_value(9,5))
        goodtrnid = int(sheet.cell_value(9,7))
        badtrnid = int(sheet.cell_value(9,8))
        goodootid = int(sheet.cell_value(9,10))
        badootid = int(sheet.cell_value(9,11))

file_location 变量将具有文件的路径,xlrd 使用它打开并读取它。我不知道是什么导致了这个错误,但我想知道我们是否可以使用 xlrd 或 pandas 从服务器或云应用程序访问本地文件。服务器是否执行请求或系统是否允许 Web 应用程序通过提及路径来获取文件。

标签: pythonpandasfileflaskxlrd

解决方案


您的 Flask 代码只能访问存储在运行它的机器上的文件;当你在本地运行它时,它可以访问你本地机器上的文件,但是如果你在像 PythonAnywhere 这样的服务器上运行它,它只能访问存储在该服务器上的文件。如果您希望人们能够在他们的本地计算机上指定文件并让您的代码处理这些文件,您需要实现代码以将文件上传到服务器。如果您在谷歌上搜索“上传文件烧瓶”,您会找到有关如何执行此操作的有用指南。


推荐阅读