使用boto从S3按名称删除文件
Delete file by name from S3 using boto
我正在尝试按名称从 Django 项目中删除一个文件。我有一个可以正确上传文件的功能,但我无法弄清楚该功能。我已尝试使用具有 get_key 和其他功能的示例,但尚未能够获取正确的密钥。我想我滥用了 get_key 或者它被贬值了。我要删除的文件也是 .png 文件,文本是指我的文件名和位置。下面是一段代码
from boto.s3.connection import S3Connection, Bucket, Key
from boto.s3.key import Key
text = '//folder' + request.split(':')[1] + '_toS3.png'
conn = S3Connection('###', '####')
S3_BUCKET_NAME = 'Bucket_name'
b = Bucket(conn, S3_BUCKET_NAME)
k = Key(b)
k.key = k.get_key(text)
b.delete_key(k)
使用存储桶的 delete_key
方法。您提供 key_name
作为参数。
bucket = Bucket(conn, S3_BUCKET_NAME)
bucket.delete_key('path/to/key_name.png')
您必须将 k.key
更改为 k.name
。
b = Bucket(conn, S3_BUCKET_NAME)
k = Key(b)
k.name = k.get_key(text)
b.delete_key(k)
我正在尝试按名称从 Django 项目中删除一个文件。我有一个可以正确上传文件的功能,但我无法弄清楚该功能。我已尝试使用具有 get_key 和其他功能的示例,但尚未能够获取正确的密钥。我想我滥用了 get_key 或者它被贬值了。我要删除的文件也是 .png 文件,文本是指我的文件名和位置。下面是一段代码
from boto.s3.connection import S3Connection, Bucket, Key
from boto.s3.key import Key
text = '//folder' + request.split(':')[1] + '_toS3.png'
conn = S3Connection('###', '####')
S3_BUCKET_NAME = 'Bucket_name'
b = Bucket(conn, S3_BUCKET_NAME)
k = Key(b)
k.key = k.get_key(text)
b.delete_key(k)
使用存储桶的 delete_key
方法。您提供 key_name
作为参数。
bucket = Bucket(conn, S3_BUCKET_NAME)
bucket.delete_key('path/to/key_name.png')
您必须将 k.key
更改为 k.name
。
b = Bucket(conn, S3_BUCKET_NAME)
k = Key(b)
k.name = k.get_key(text)
b.delete_key(k)