3

我正在尝试使用 boto 从亚马逊 mws 中获取有竞争力的价格。当我尝试为美国市场做这件事时,它工作得很好,当我尝试使用欧洲端点做它时,它会返回

boto.mws.response.AccessDenied:AccessDenied:未经授权的访问被拒绝

这是我使用的代码

connect = connection.MWSConnection(aws_access_key_id=access_key,
`                                  aws_secret_access_key=secret_key,
                                    host="mws-eu.amazonservices.com")
connect.SellerId=sellerId
product = connect.get_competitive_pricing_for_asin(ASINList= ["B01HETFQA8"],
                                                  MarketplaceId="A1PA6795UKMFR9")

同样,它适用于美国市场。我在美国和欧洲注册为卖家。我从此页面获取市场 ID https://docs.developer.amazonservices.com/en_US/dev_guide/DG_Endpoints.html

非常感谢任何帮助

4

1 回答 1

1

此问题已在此处得到解答: 亚马逊欧洲 MWS Python Boto Connection AccessDenied

但重申一下,找到您connection.py的 boto 文件并在第 269 行更改:

kw.setdefault('host', 'mws.amazonservices.com')

kw.setdefault('host', 'mws-eu.amazonservices.com')

默认情况下,Boto 正在路由到亚马逊美国 MWS 终端节点 mws.amazonservices.com,而您正在寻找亚马逊欧盟 MWS 终端节点,它是mws-eu.amazonservices.com

此处提供了其他国家/地区/地理区域的完整端点列表http://docs.developer.amazonservices.com/en_US/dev_guide/DG_Endpoints.html

您还可以connection.py在此处查看 Boto 的默认文件: https ://github.com/boto/boto/blob/develop/boto/mws/connection.py#L269

于 2018-06-09T15:25:55.017 回答