Python 为boto脚本提供的XML格式不正确

Python 为boto脚本提供的XML格式不正确,python,amazon-web-services,amazon-s3,boto3,Python,Amazon Web Services,Amazon S3,Boto3,我正在编写一个boto脚本,该脚本将支持S3 bucket跨区域复制,我遵循了以下步骤“https://stackoverflow.com/a/57778885/9931092“对于我的脚本,脚本对我来说似乎工作正常,但它没有现有的objectreplication作为代码的一部分,并且在添加时不会使代码运行。 这是我的boto脚本: import boto3 s3_client = boto3.client('s3') response = s3_client.put_bucket_vers

我正在编写一个boto脚本,该脚本将支持S3 bucket跨区域复制,我遵循了以下步骤“https://stackoverflow.com/a/57778885/9931092“对于我的脚本,脚本对我来说似乎工作正常,但它没有
现有的objectreplication
作为代码的一部分,并且在添加时不会使代码运行。 这是我的boto脚本:

import boto3
s3_client = boto3.client('s3')

response = s3_client.put_bucket_versioning(
    Bucket='cross-test-6',
    VersioningConfiguration={
        'Status': 'Enabled'
    },
)

response = s3_client.put_bucket_versioning(
    Bucket='cross-test-7',
    VersioningConfiguration={
        'Status': 'Enabled'
    },
)



##Enable
s3_client.put_bucket_replication(Bucket='cross-test-6', 
ReplicationConfiguration={
    "Role": "arn:aws:iam::196687784845:role/test",
    "Rules": [
        {
            "Status": "Enabled",
            "Priority": 1, 
            "DeleteMarkerReplication": { "Status": "Disabled" },
            "ExistingObjectReplication": { "Status": "Enabled" },
            "Filter" : { "Prefix": ""},            
            "Destination": {
                "Bucket": "arn:aws:s3:::cross-test-7",
                "Account": "196687784845"
            },           
        }
    ]
}
)
这是我得到的回溯:

Traceback (most recent call last):
  File "/home/pranay/Desktop/Amit/main-2.py", line 21, in <module>
    s3_client.put_bucket_replication(Bucket='cross-test-6', 
  File "/home/pranay/.local/lib/python3.8/site-packages/botocore/client.py", line 337, in _api_call
    return self._make_api_call(operation_name, kwargs)
  File "/home/pranay/.local/lib/python3.8/site-packages/botocore/client.py", line 656, in _make_api_call
    raise error_class(parsed_response, operation_name)
botocore.exceptions.ClientError: An error occurred (MalformedXML) when calling the PutBucketReplication operation: The XML you provided was not well-formed or did not validate against our published schema
回溯(最近一次呼叫最后一次):
文件“/home/pranay/Desktop/Amit/main-2.py”,第21行,在
s3_客户端。放置_bucket_复制(bucket='cross-test-6',
文件“/home/pranay/.local/lib/python3.8/site packages/botocore/client.py”,第337行,在api调用中
返回self.\u make\u api\u调用(操作名称,kwargs)
文件“/home/pranay/.local/lib/python3.8/site packages/botocore/client.py”,第656行,在api调用中
引发错误\u类(解析的\u响应、操作\u名称)
botocore.exceptions.ClientError:调用PutBucketReplication操作时发生错误(格式错误的DXML):您提供的XML格式不正确,或者未根据发布的架构进行验证

我怀疑官方文档中有
“ExistingObjectReplication”
,而不是
“ExistingObjectReplication”
,尽管我也尝试过,但还是出现了相同的错误。

您使用的是哪一版本的boto3?您尝试过最新版本吗?我刚刚更新了boto3版本,然后重试,但出现了相同的错误。