簡體   English   中英

從Amazon Product Advertising API獲取所有優惠的列表

[英]Get list of ALL offers from Amazon Product Advertising API

我需要能夠使用Amazon API獲得產品的所有報價清單。 這是我發送的請求:

http://webservices.amazon.com/onca/xml?Service=AWSECommerceService&Operation=ItemLookup&SubscriptionId=&AssociateTag=&Version=2011-08-01&ItemId=B007IJQDQQ&IdType=ASIN&ResponseGroup=Offers&Condition=All&MerchantId=All

這將返回以下報價:

<Offers>
<TotalOffers>1</TotalOffers>
<TotalOfferPages>1</TotalOfferPages>
<MoreOffersUrl>
http://www.amazon.com/gp/offer-listing/B007IJQDQQ%3FSubscriptionId%3DAKIAJTZ6VROOTPJAPPWQ%26tag%3Damazoautom-20%26linkCode%3Dxm2%26camp%3D2025%26creative%3D386001%26creativeASIN%3DB007IJQDQQ
</MoreOffersUrl>
<Offer>
<OfferAttributes>
<Condition>New</Condition>
</OfferAttributes>
<OfferListing>
<OfferListingId>
TR5sygI0VR7cwy3Hg0DBHwgCWFnkqXLyCR70jjMhy1h8gWlEisKYt5cqDbS2Fu1SEqDtfBILdxYDziJdFzfsqMpPJkBqcYV3DFovHx1nXWRy9wHS6CFZXknBvsCo1bxYS%2BsxAeYrZHrS6g6aakEJQA%3D%3D
</OfferListingId>
<Price>
<Amount>375</Amount>
<CurrencyCode>USD</CurrencyCode>
<FormattedPrice>$3.75</FormattedPrice>
</Price>
<AmountSaved>
<PercentageSaved>56</PercentageSaved>
<Availability>Usually ships in 1-2 business days</Availability>
<AvailabilityAttributes>
<IsEligibleForSuperSaverShipping>0</IsEligibleForSuperSaverShipping>
</OfferListing>
</Offer>
</Offers>

如您所見,即使它說有3個新報價,它也只返回1個報價。 有誰知道一種獲取所有報價的方法,而不僅僅是最低報價? 商家ID ='ALL'不會執行此操作,其他任何響應組(例如offerFull,offerSummary或​​offer)也不會執行此操作。

經過一些研究之后,API不可能做到這一點,但是您可以解析標准頁面的HTML以獲得詳細信息:

1)使用http://simplehtmldom.sourceforge.net/解析HTML(如果您不使用php,則需要查找類似的內容)

2)CURL(確保您設置了標頭,否則Amazon將出錯)既http://www.amazon.com/gp/offer-listing/B007IJQDQQ/?condition=newhttp://www.amazon.com/gp / offer-listing / B007IJQDQQ /?condition = used

3)要處理頁面,請計算要約的總數(找到#new span.numberreturned),然后除以15以得出頁面數。

4)您需要解析每個頁面,URL如下所示:

例如第2頁http://www.amazon.com/gp/offer-listing/B005IMB5SG/?condition=used&startIndex=15

例如第3頁http://www.amazon.com/gp/offer-listing/B005IMB5SG/?condition=used&startIndex=30

希望這是足夠的信息來幫助您入門,對不起,我無權訪問我前一段時間編寫的工作腳本。

產品API暫存器返回一個“所有商品”鏈接,您可以通過HTTP手動獲取該鏈接並進行解析,以提供包含所需信息的DOM節點列表。

在此處輸入圖片說明

就像幾年前提到的http://www.amazon.com/gp/offer-listing/B007IJQDQQ/?condition=used鏈接@dciso一樣,但其中包含的API信息有助於更嚴格地遵循亞馬遜規則。

<ItemLookupResponse>
    <Items>
        <Item>
        <ASIN>B00I8BICB2</ASIN>
        <ParentASIN>B077PSDB4X</ParentASIN>
        <DetailPageURL>https://www.amazon.com/Sony-Mirrorless-Digitial-3-0-Inch-16-50mm/dp/B00I8BICB2?psc=1&SubscriptionId_____tag=_____&linkCode=xm2&camp=2025&creative=165953&creativeASIN=B00I8BICB2</DetailPageURL>
        <ItemLinks>
            ...
            <ItemLink>
                <Description>All Offers</Description>
                <URL>https://www.amazon.com/gp/offer-listing/B00I8BICB2?SubscriptionId=______&tag=_____&linkCode=xm2&camp=2025&creative=386001&creativeASIN=B00I8BICB2</URL>
            </ItemLink>
        </ItemLinks>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM