我试图通过Boto set_contents_from_filename()上传本地文件。我按照教程说明here但没有运气。我也尝试过在StackOverflow here和here中提到的变体,但我得到相同的错误。python boto set_contents_from_filename给出FileNotFoundError:[Errno 2]没有这样的文件或目录
任何试图调用set_contents_from_filename给“FileNotFoundError:[错误2]没有这样的文件或目录”
我的python脚本是在同一个子目录,我要上传的文件:AWS_Upload.txt。我的工作目录也设置正确。我可以成功调用set_contents_from_ 串(),所以我知道一切工作(我的钥匙,我的水桶等)
此外,下面的FILE_PATH常数通过尝试os.path.join创建一个遗留适当的完整路径,但我收到了同样的错误。
最后,文件确实存在。我将c:\ Apps \ Docs \ Python \ MyPy \ AWS_Upload.txt复制并粘贴到Windows文件资源管理器中,并且该文件出现在记事本中。
任何帮助,将不胜感激。
from boto.s3.key import Key
import boto.sqs
ACCESS_KEY='mykey'
SECRET_ACCES_KEY='mysecret'
BUCKET = 'pybucket234'
FILE_PATH = 'c:\\Apps\\Docs\\Python\\MyPy\\'
FILE_UPLOAD = 'AWS_Upload.txt'
conn = boto.connect_s3(aws_access_key_id=ACCESS_KEY,
aws_secret_access_key=SECRET_ACCES_KEY)
# Save some data
bucket = conn.get_bucket(BUCKET)
k = Key(bucket)
k.key = 'myfilekey'
k.set_contents_from_filename('AWS_Upload.txt')
# FileNotFoundError: [Errno 2] No such file or directory: 'AWS_Upload.txt'
# Tried this as well but get the same error
k.set_contents_from_filename('c:\Apps\Docs\Python\MyPy\AWS_Upload.txt')
# FileNotFoundError: [Errno 2] No such file or directory: 'c:\\Apps\\Docs\\Python\\MyPy\\AWS_Upload.txt'