[英]How to get full filepath on Flask?
我想獲得 Flask 上的完整文件路徑。
這是 HTML 代碼的一部分。
<form method="post" action="{{ url_for('xxx') }}" enctype='multipart/form-data'>
<dl>
<label for="fname">Filename</label>
<input type="file" name="fname" id="fname">
</dl>
...
</form>
然后,用戶將文件名發送到 Flask。
Flask 會抓住它。
try:
file = request.files['fname']
with open(file.filename) as f:
...
catch:
...
但是 Flask 只能獲取文件名,不能獲取完整路徑。
因此,此應用程序無法打開文件並返回內部服務器錯誤。
如何獲取用戶本地文件的完整路徑?
提前致謝。
根據您的問題,我認為您想上傳文件然后訪問上傳的文件。
盡管您在詢問與此任務無關的用戶本地路徑的完整路徑,但幾乎沒有什么不清楚的,因為 flask 不應訪問用戶的文件系統(瀏覽除外),而且每個用戶都必須定義不同的路徑每次上傳。 所以回過頭來,我認為方法應該更多的是訪問服務器上用戶上傳的文件。
因此,如果是這種情況,讓我進一步解釋。
每個上傳的文件首先保存在服務器上的一個臨時位置,然后實際保存到其最終位置。
您可以通過以下方式設置此位置:
app.config['UPLOAD_FOLDER']
當然,文件名是您上傳時獲得的文件名,具體取決於您的代碼。
設置后,只需使用該位置並更新您的 function。
可以在這里找到很好的參考:消費公共上傳https://blog.miguelgrinberg.com/post/handling-file-uploads-with-flask
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.