2015-06-18 6 views
6

Ich schreibe ein automatisiertes Skript, um Produkte auf dem Amazon Marketplace aufzulisten, es funktioniert gut für 95% der Produkte, die ich auflisten möchte, aber ich habe Probleme mit bestimmten Elementen, wie als "Bulk-Deals" oder "Packs mit X" -Listen.Amazon Marketplace Barcode zur Produktmenge

Zum Beispiel habe ich ein Produkt mit einem EAN-Strichcode von 7613032631703, und ich kann den Amazon-API für Informationen über Produkte mit einem Barcode mit so etwas wie diese

$amazon_api = new MarketplaceWebServiceProducts_Client(
    AWS_ACCESS_KEY_ID, 
    AWS_SECRET_ACCESS_KEY, 
    APPLICATION_NAME, 
    APPLICATION_VERSION, 
    [ 
     'ServiceURL' => 'https://mws-eu.amazonservices.com/Products/2011-10-01', 
     'ProxyHost' => null, 
     'ProxyPort' => -1, 
     'ProxyUsername' => null, 
     'ProxyPassword' => null, 
     'MaxErrorRetry' => 3, 
    ] 
); 

$list = new MarketplaceWebServiceProducts_Model_IdListType(); 
$list->setId('7613032631703'); 

$request = new MarketplaceWebServiceProducts_Model_GetMatchingProductForIdRequest(); 
$request->setSellerId(SELLER_ID); 
$request->setIdType('EAN'); 
$request->setMarketplaceId(MARKETPLACE_ID); 
$request->setIdList($list); 
$response = $amazon_api->getMatchingProductForId($request); 

Abfrage, die gibt mir ein MarketplaceWebServiceProducts_Model_GetMatchingProductForIdResponse Objekt , die ich gut gebrauchen kann.

Aber die alle Ergebnisse Amazon zurückgekehrt sind für Produkt-Angebote von bulk buys for this product, die soweit ich sagen kann, bedeutet Amazon es falsch haben, wie in diesem Beispiel der EAN-Strichcode 7613032631703 zu einem Paket von x12 dieses Produkts übersetzt, wo Amazon sagt, es ist das gleiche Produkt, aber in einem Multi-Pack von 4 (also 48 Pakete insgesamt).

Offensichtlich möchte ich nicht mein Produkt auf die gleiche ASIN als die "Bulk-Deal" -Listen setzen, wie ich sie einzeln verkaufe.

Gibt es eine Möglichkeit, dies zu verhindern? Ich kann nirgends in den Amazon API Dokumenten eine "Listing Quantity" oder "Stock Relation Value" oder etwas finden, das ich verwenden könnte, um zu identifizieren, wenn sie einen singulären Barcode für Auflistungen verwenden, die tatsächlich Multipacks sind.

Vielen Dank für Ideen, die mir jemand geben kann.

Edit:

Nach weiter in diese suchen, ich an dem Punkt bin, wo ich nicht glaube, es möglich ist. Einfach gesagt, es gibt falsche Angebote bei Amazon und Sie können nicht den Informationen vertrauen, die Amazon Ihnen gibt, um jeden Eintrag automatisieren zu können.

Die höchste Hoffnung, die ich hatte, war ein Attribut auf das Ergebnis MarketplaceWebServiceProducts_Model_ListMatchingProductsRequest, wenn Sie in AttributeSets graben finden Sie PackageQuantity für die Auflistung. In dem Beispiel, das ich für Barcode 7613032631703 gab, haben einige der zurückgegebenen Auflistungen eine PackageQuantity von 4, die korrekt wäre! Und Sie könnten dann diesen Prozess automatisieren. Aber mehrere andere Angebote für das gleiche Produkt haben eine PackageQuantity von 1, eine von ihnen hat eine PackageQuantity von 48 .... die Daten, die Amazon liefert, ist nur ungenau (es ist nicht wirklich ihre Schuld, dass diese Auflistungen falsch sind, wer auch immer die Auflistung in der erste Ort hat es falsch gemacht, aber ich denke, dass sie diese Listen besser überwachen und korrigieren sollten).

Ich bin wirklich interessiert, wenn jemand eine solide Lösung gefunden hat, die Automatisierung ermöglicht, aber wenn jemand mit dem gleichen Problem hier ist, ich denke nicht, dass es wahrscheinlich aussieht, und ich würde davon abraten, es zu automatisieren weil die möglichen Fehler, die es machen könnte, riesig sind.

Antwort

0

Ich tat dies für einen Kunden. Ich musste die Seite kratzen, die sie dir anzeigen ließen. Ich bin mir nicht sicher, wo Sie es finden, aber es existiert. Ich habe das vor etwa einem Jahr getan und wie du warst ich es, es ist unmöglich. Aber ich hatte einen Kunden, der mir riesige Mengen an Geld zuwarf, um es herauszufinden, also habe ich es möglich gemacht.

Ich brauchte Stunden, um den Algorithmus für Scraping zu programmieren, da es so kompliziert war, genau das zu bekommen, was ich brauchte, und auch Aufrufe an die API dazwischen benötigt wurden. Ich bin mir sicher, dass dies alles eine Art Verletzung ihrer TOS war, also lasst mich das ablehnen, indem ich sage, es ist möglich, aber dies dient nur zu Informationszwecken. Sie sollten die AGB nicht verletzen.

Hoffe, das hilft. :)

Verwandte Themen