【发布时间】:2020-10-24 02:34:59
【问题描述】:
我尝试了以下几种在 S3 中上传文件的方法 这最终导致存储的不是数据而是路径 数据。
import boto3
s3 = boto3.resource('s3')
或
s3 = boto3.client(
's3',
aws_access_key_id="key_id",
aws_secret_access_key="access_key")
s3.Object('bucket/folder/','xyz.csv').upload_file(Filename='/mnt/folder/xyz.csv')
--> 给我一个错误 FileNotFoundError: [Errno 2] No such file or directory: '/mnt/folder/xyz.csv'
s3.put_object(Body='/databricks/driver/xyz.csv', Bucket='bucket', Key='folder/xyz.csv')
--> 成功执行,但打开文件时只包含这个字符串 - '/databricks/driver/xyz.csv'
s3.Object('bucket', 'folder/xyz.csv').put(Body="/FileStore/folder/xyz.csv")
--> 成功执行,但打开文件时只包含这个字符串 - '/FileStore/folder/xyz.csv'
bucket = s3.Bucket('bucket')
s3.Object('bucket/folder', 'xyz.csv').put(Body=open('/FileStore/folder/xyz.csv', 'rb'))
--> 给我一个错误FileNotFoundError: [Errno 2] No such file or directory: '/mnt/folder/xyz.csv'
with open('/mnt/folder/xyz.csv', "rb") as f:
s3.upload_fileobj(f, 'bucket', 'folder/xyz.csv')
--> 给我一个错误FileNotFoundError: [Errno 2] No such file or directory: '/mnt/folder/xyz.csv'
s3.meta.client.upload_file('/mnt/folder/xyz.csv', 'bucket', 'folder/xyz.csv')
--> 给我一个错误FileNotFoundError: [Errno 2] No such file or directory: '/mnt/folder/xyz.csv'
如果有任何拼写错误或语法错误,或者是否需要更改问题的结构,请告诉我。谢谢!
【问题讨论】:
标签: python amazon-web-services amazon-s3 boto3 databricks