我正在用Python开发一个应用程序,我需要计算
S3 Puts
的数量,为此我需要将文件的总大小除以multipart_chunksize
来找到块的总数。
我可以使用此 shell 命令获取
multipart_chunksize
值
aws configure get default.s3.multipart_chunksize
我可以使用一些标准库(
subprocess
等)在python中调用这个命令,但我真的想避免这种情况。
有没有办法使用像
multipart_chunksize
这样的Python库来获取
boto
值
目前似乎没有一种简单的方法可以在
boto3
中获取此内容。它被设置为 TransferConfig
对象 here 的默认参数,但您必须进行内省才能在代码中查询它。我怀疑它是否会从 8MB 开始改变,所以你现在可以做出这个假设。
class TransferConfig(S3TransferConfig):
def __init__(
multipart_chunksize=8 * MB,
)
看起来您想使用 boto3 中的 CLI 配置,但 boto3 不从中提取。如果您想管理该配置,您必须创建自己的
TransferConfig
对象并传递它。然后你就永远知道块的大小。