2017-07-28 401 views
1

我的Python腳本無法解析在下面的腳本在Linux服務器上的相對路徑:相對路徑

import boto3 
import os 

conn = boto3.client('s3', region_name="eu-west-1", endpoint_url="https://example.com", config=Config(signature_version="s3", s3={'addressing_style': 'path'})) 
conn.download_file('mytestbucket22', 'file.csv', os.path.join(os.getcwd(), 'static', 'filecache', 'file.csv')) 

錯誤:

[Errno 2] No such file or directory: '/home/vcap/app/static/filecache/file.csv.D3e3D7aF' 

然而,當我這樣做這工作,它將文件保存到我的腳本的路徑。

conn.download_file('mytestbucket22', 'file.csv', 'file.csv') 

我的文件夾和文件結構如下所示:

--script.py 
--static 
----filecache 

我怎樣才能將文件保存到文件夾filecache?感謝

+0

嘗試尋找當前路徑作爲一個字符串,並添加子路徑呢? – pointerless

+0

使用相對路徑時會出現什麼錯誤? – AlG

+0

「static」和「static/filecache」的權限是否正確? –

回答

4
conn.download_file('mytestbucket22', 'file.csv', os.path.join(os.getcwd(), 'static', 'filecache', 'file.csv')) 

爲上面所用的模塊,常量和函數文檔的引用:

+0

謝謝。不幸的是我得到了同樣的錯誤。 [Errno 2]沒有這樣的文件或目錄:'/home/vcap/app/static/filecache/file.csv.D3e3D7aF' – user3080315

+0

你能否在你的問題中填寫完整的信息和代碼? –