首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >亚马逊欧洲MWS Python Boto连接AccessDenied

亚马逊欧洲MWS Python Boto连接AccessDenied
EN

Stack Overflow用户
提问于 2016-05-15 11:28:38
回答 1查看 448关注 0票数 2

最近,我开始学习Python。我计划为我们的公司建立一个程序来管理来自所有亚马逊市场网站,我们自己的Bigcommerce商店和eBay的订单。

现在,我可以使用Boto库成功地向亚马逊美国、亚马逊加拿大和亚马逊墨西哥发送请求,并获得所有订单信息。(Boto是我能找到的唯一与Amazon MWS完美配合的库),但是当我使用相同的方法向Amazon.co.uk发送请求时,它失败了。下面是我用来发送请求的示例代码。

代码语言:javascript
复制
from boto.mws.connection import MWSConnection
MarketPlaceID = marketplaceid
MerchantID = merchantid
AccessKeyID = accesskeyid
SecretKey = secretkey
mws = MWSConnection(AccessKeyID,SecretKey)
mws.SellerId = MerchantID
mws.Merchant = MerchantID
mws.MarketplaceId = MarketPlaceID
orderstatus = ['PartiallyShipped','Unshipped', 'Shipped']
orders=mws.list_orders(LastUpdatedAfter = '2016-05-01T17:00:00Z', MarketplaceId = [MarketPlaceID],OrderStatus=orderstatus)

这段代码非常适合我们在亚马逊加拿大,亚马逊美国和亚马逊墨西哥的商店。但是当我在Amazon.co.uk上使用它时,我总是得到这些AccessDenied代码。(我100%确认所有的correct、sellersid、accesskeyid和secretkeyid都是正确的。)

代码语言:javascript
复制
AccessDenied
Traceback (most recent call last):
  File "C:\Python\Amazon Test.py", line 17, in <module>
orders=mws.list_orders(LastUpdatedAfter='2016-05-01T17:00:00Z', MarketplaceId = [MarketPlaceID],OrderStatus=orderstatus)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 158, in requires
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 158, in requires
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 177, in wrapper
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 196, in wrapper
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 177, in wrapper
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 196, in wrapper
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 177, in wrapper
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 139, in wrapper
return func(*args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 81, in wrapper
return func(self, *args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 252, in wrapper
return func(self, request, response, *args, **kw)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 732, in list_orders
return self._post_request(request, kw, response)
  File "C:\Users\Yinghao\AppData\Local\Programs\Python\Python35-32\lib\site-packages\boto\mws\connection.py", line 323, in _post_request
response.reason, body)
boto.mws.response.ResponseFactory.element_factory.<locals>.DynamicElement:         AccessDenied: Unauthorized 
Access denied

谁能告诉我如何通过Python Boto库或其他Python库连接到Amazon.co.uk?任何帮助都将受到极大的感谢。

谢谢

EN

回答 1

Stack Overflow用户

发布于 2016-06-07 12:02:19

我自己想出来的。关键是这一行的代码https://github.com/boto/boto/blob/develop/boto/mws/connection.py#L269

在将'mws.amazonservices.com‘更改为'mws-eu.amazonservices.com’之后,我可以使用上面的代码连接到亚马逊欧洲。所以这个问题都是关于Amazon Amazon MWS端点的。我可以使用Boto连接到亚马逊日本,中国,印度,欧洲,通过这个页面的指示,http://docs.developer.amazonservices.com/en_US/dev_guide/DG_Endpoints.html

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/37234242

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档