Amazon MWS доступ запрещен для европейского рынка
Я пытаюсь получить конкурентоспособные цены с Amazon MWS с помощью Boto. Когда я пытаюсь сделать это для рынка США, он работает отлично, но когда я пытаюсь сделать это с использованием европейской конечной точки, он возвращает
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")
Опять же, он отлично работает на рынке США. Я зарегистрирован как продавец в США и Европе. Я получаю идентификаторы торговых площадок с этой страницы https://docs.developer.amazonservices.com/en_US/dev_guide/DG_Endpoints.html
Любая помощь очень ценится
1 ответ
На этот вопрос уже дан ответ здесь: Amazon Europe MWS Python Boto Connection AccessDenied.
Но, чтобы повторить, найдите свой connection.py
файл для бото и в строке 269 изменить:
kw.setdefault('host', 'mws.amazonservices.com')
в
kw.setdefault('host', 'mws-eu.amazonservices.com')
По умолчанию Boto выполняет маршрутизацию к конечной точке MWS Amazon US. mws.amazonservices.com
в то время как вы ищете конечную точку MWS Amazon EU, которая является mws-eu.amazonservices.com
Полный список конечных точек для других стран / географических регионов доступен здесь http://docs.developer.amazonservices.com/en_US/dev_guide/DG_Endpoints.html
Вы также можете увидеть Бото по умолчанию connection.py
файл здесь: https://github.com/boto/boto/blob/develop/boto/mws/connection.py