草庐IT

S3PutObjectOperation_Internal

全部标签

python - Boto - 将文件上传到 Amazon S3 上的特定位置

这是我正在使用的代码importsysimportbotoimportboto.s3#AWSACCESSDETAILSAWS_ACCESS_KEY_ID=''AWS_SECRET_ACCESS_KEY=''bucket_name=AWS_ACCESS_KEY_ID.lower()+'-mah-bucket'conn=boto.connect_s3(AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEY)bucket=conn.create_bucket(bucket_name,location=boto.s3.connection.Location.DEFAUL

python - 从 boto3 检索 S3 存储桶中的子文件夹名称

使用boto3,我可以访问我的AWSS3存储桶:s3=boto3.resource('s3')bucket=s3.Bucket('my-bucket-name')现在,存储桶包含文件夹first-level,该文件夹本身包含多个以时间戳命名的子文件夹,例如1456753904534。我需要知道这些子文件夹的名称以用于我正在做的另一项工作,我想知道是否可以让boto3为我检索这些子文件夹。所以我尝试了:objs=bucket.meta.client.list_objects(Bucket='my-bucket-name')它给出了一个字典,它的键'Contents'给了我所有的三级文件而

python - Amazon S3 boto - 如何删除文件夹?

我在s3中创建了一个名为“test”的文件夹,并将“test_1.jpg”、“test_2.jpg”推送到“test”中。如何使用boto删除文件夹“test”? 最佳答案 这里是2018(几乎是2019)版本:s3=boto3.resource('s3')bucket=s3.Bucket('mybucket')bucket.objects.filter(Prefix="myprefix/").delete() 关于python-AmazonS3boto-如何删除文件夹?,我们在Stac

python - Boto3/S3 : Renaming an object using copy_object

我正在尝试使用pythonboto3重命名我的s3存储桶中的文件,但我无法清楚地理解这些参数。有人可以帮我吗?我的计划是将对象复制到一个新对象,然后删除实际对象。我在这里发现了类似的问题,但我需要使用boto3的解决方案。 最佳答案 我找到了另一个解决方案s3=boto3.resource('s3')s3.Object('my_bucket','new_file_key').copy_from(CopySource='my_bucket/old_file_key')s3.Object('my_bucket','old_file_ke

python - 使用 Amazon s3 boto 库,如何获取已保存 key 的 URL?

我正在保存一个存储桶的key:key=bucket.new_key(fileName)key.set_contents_from_string(base64.b64decode(data))key.set_metadata('Content-Type','image/jpeg')key.set_acl('public-read')保存成功后,如何访问新建文件的URL? 最佳答案 如果key是公开可读的(如上所示),您可以使用Key.generate_url:url=key.generate_url(expires_in=0,quer

python - pip:没有名为 _internal 的模块

当我尝试以任何方式使用pip时,我遇到了问题。我正在使用Ubuntu16.04.4我应该说我已经使用过它,而且我从来没有遇到过任何问题,但是从今天开始,当我使用任何命令时,我总是会遇到同样的错误(例如使用pip--upgrade)。Traceback(mostrecentcalllast):File"/usr/local/bin/pip",line7,infrompip._internalimportmainImportError:Nomodulenamed_internal我尝试过执行sudoapt-getremovepython-pip,然后执行sudoapt-getinstall

python - 将 Dataframe 保存到 csv 直接保存到 s3 Python

我有一个要上传到新CSV文件的pandasDataFrame。问题是我不想在将文件传输到s3之前将其保存在本地。有没有像to_csv这样的方法直接将数据帧写入s3?我正在使用boto3。这是我目前所拥有的:importboto3s3=boto3.client('s3',aws_access_key_id='key',aws_secret_access_key='secret_key')read_file=s3.get_object(Bucket,Key)df=pd.read_csv(read_file['Body'])#MakealterationstoDataFrame#Thenex

python - 如何使用 boto 将文件上传到 S3 存储桶中的目录

我想使用python复制s3存储桶中的文件。例如:我有存储桶名称=测试。在存储桶中,我有2个文件夹,名称为“dump”和“input”。现在我想使用python将文件从本地目录复制到S3“转储”文件夹...有人可以帮帮我吗? 最佳答案 注意:此答案使用boto。见otheranswer使用boto3,即newer.试试这个...importbotoimportboto.s3importsysfromboto.s3.keyimportKeyAWS_ACCESS_KEY_ID=''AWS_SECRET_ACCESS_KEY=''buck

python - 使用 boto3 检查 s3 的存储桶中是否存在 key

我想知道boto3中是否存在key。我可以循环存储桶的内容并检查key是否匹配。但这似乎更长而且有点矫枉过正。Boto3官方文档明确说明了如何执行此操作。可能是我错过了显而易见的事情。谁能指出我如何做到这一点。 最佳答案 Boto2的boto.s3.key.Key对象曾经有一个exists方法,该方法通过执行HEAD请求并查看key来检查S3上是否存在key结果,但似乎不再存在。你必须自己做:importboto3importbotocores3=boto3.resource('s3')try:s3.Object('my-bucke

python - 使用 Boto3 将 S3 对象作为字符串打开

我知道使用Boto2可以将S3对象作为字符串打开:get_contents_as_string()在boto3中是否有等效的功能? 最佳答案 read将返回字节。至少对于Python3,如果要返回字符串,则必须使用正确的编码进行解码:importboto3s3=boto3.resource('s3')obj=s3.Object(bucket,key)obj.get()['Body'].read().decode('utf-8') 关于python-使用Boto3将S3对象作为字符串打开,