Получите самые низкие 4 цены для данного ASIN - PullRequest
1 голос
/ 25 марта 2019

Я нашел этот API в веб-сервисах Amazon. GetLowestOffersPriceListings , у меня также есть ключ доступа и секрет, который я не могу использовать.

ASIN = ['B07CGKVJ34','B07HJRQXNY']
url = 'https://mws.amazonservices.com/ASINList.ASIN.1={}&Action=GetLowestOfferListingsForASIN&MarketplaceId=ATVPDKIKX0DER\
&Signature={}&AWSAccessKeyId={}'.format(ASIN[0], secret, key)
res = requests.get(url, headers={'User-Agent': "Mozilla/5.0 (X11; Ubuntu; Linux x86_64; rv:65.0) Gecko/20100101 Firefox/65.0"})
print(res.text)

Так что я думаю, что моя проблема с самим URL, формат неверный или неправильный порядок.

Я хочу получить 4 самые низкие цены за список номеров ASIN, извините, но я не могу поделиться ключом и секретом.

Редактировать 1: этот URL открывается, но теперь я получаю версию API, которая отсутствует в разделе сообщения.

1 Ответ

0 голосов
/ 25 марта 2019

Вы используете Amazon Marketplace Web Service (Amazon MWS) для запроса Amazon Retail Inventory, который очень отличается от Amazon Web Services (AWS) , который используется для размещения вашего собственные серверы и системы.

Вам нужно добавить префикс URL к https://

1010 * т.е. *

https://mws.amazonservices.com/

Кроме того, URL, по которому вам нужно позвонить, на самом деле https://mws.amazonservices.com/Products/2011-10-01, которая включает в себя версию. Вот пример из Amazon MWS документации:

https://mws.amazonservices.com/Products/2011-10-01
    ?AWSAccessKeyId=AKIAJGUVGFGHNKE2NVUA
    &Action=GetLowestOfferListingsForASIN
    &MWSAuthToken=amzn.mws.4ea38b7b-f563-7709-4bae-87aeaEXAMPLE
    &SellerId=A2NK2PX936TF53
    &SignatureVersion=2
    &Timestamp=2012-02-07T01%3A22%3A39Z
    &Version=2011-10-01
    &Signature=MhSREjubAxTGSldGGWROxk4qvi3sawX1inVGF%2FepJOI%3D
    &SignatureMethod=HmacSHA256
    &MarketplaceId=ATVPDKIKX0DER
    &ASINList.ASIN.1=B002KT3XRQ
    &ASINList.ASIN.2=B002KT3XQC
    &ASINList.ASIN.3=B002KT3XQM
...