#1
| ||||
| ||||
Klasse gesucht um auf die Amazon API zugreifen zu könnenGuten Morgen, Der Titel sagt eigentlich alles.. Ich such eine Klasse mit der ich Bücher (o.ä.) von Amazon auf meiner Seite anzeigen lassen kann. Ich hab gerade bereits folgende probiert: http://freshmeat.net/projects/amazon_webservice_api/ Leider funktioniert sie nicht so gut bzw. garnicht da unvollständig und nur für echte Experten geeignet Ziel ist es, zu einem Suchbegriff passende Bücher auszulesen, den Link mit meiner Partner-ID zu verknüpfen und so ein paar Cent mehr zu machen. Ich hab es bei Reimer mal gesehen, vielleicht öffnet er ja seine Schatztruhe für mich? Würd' mich über Antworten freuen (P.S. Hab mich bei Amazon bereits für den Development Service angemeldet und habe eine gültige ID) Hilfe, das Forum ist runtergerutscht und ich hab das falsche erwischt Kann es jemand dahin verschieben wo es eigentlich hin sollte? |
#2
| ||||
| ||||
Ich bin gerade am testen von diesem Ding ... kannst dir ja auch mal anschauen. Bin aber noch nicht näher darauf eingegangen. Habe aber bei vielen Leuten gelesen, dass sie auf nuSOAP schwören, weil man damit längst nicht auf Amazon beschränkt ist. Reimer´s Erfahrung und Umsetzung würde mich allerdings auch interessieren. __________________ Jan Stöver |
#3
| ||||
| ||||
Ich bin jetzt an http://associatesshop.filzhut.de/dow...ferer=#Summary dran. Ist leider vollkommen auf englisch ausgelegt und bietet ein komisches System, sodass ich mir nicht sicher bin ob meine Partnerlinks auch gehen. Würde denn ein Link wie http://www.amazon.de/exec/obidos/asi...agodentreff-20 reichen? (Nicht klicken, sonst denkt ihr noch ich will Kohle machen ) Ansonsten werd ich das wohl nehmen. Es ist zwar knapp über 1000 Zeilen lang (allein die Funktionen), es bietet aber ne Caching-Funktion und wenn ich den ganzen Unsinn rausschmeisse dürfte ich auf 200 Zeilen kommen *g* |
#4
| ||||
| ||||
Der associatesshop ist ja schon wieder ein richtiger Shop wenn ich das richtig lese und mir die Examples anschaue. Das finde ich schon wieder zu übertrieben. __________________ Jan Stöver |
#5
| ||||
| ||||
Ich klau mir ja nur die Funktionen zum Zugriff *g* Momentan verwende ich ne modifizierte Version der Demo: http://associatesshop.filzhut.de/dow...ple1_index.php (Die dort nicht funktioniert weil dort keine Developer-ID hinterlegt ist) Was mir allerdings aufgefallen ist: Die Demo von der Klasse die du grade testest findet ein Produkt anhand der ASIN welches 'meine' Klasse nicht findet. Ausserdem findet es Bücher, kann die Details auch anzeigen und wenn ich es dann bestellen will oder mir die Details auf amazon.de angucken will findet er das Produkt nicht. Komisches Ding, das. btw. Hab den Beitrag über deinem letzten geändert, lies das mal btw.² Verschieb es mal bitte ins passende Forum |
#6
| ||||
| ||||
Fast jeder kennt Amazon von Namen her und viele weitere sind dort registrierte Kunden. Amazon bietet zudem ein Partnerprogramm an um auf der eigenen Seite für Artikel von Amazon zu werben. Das Problem ist, dass dies mit einem großen Arbeitsaufwand verbunden ist. Für jeden Artikel müssen Bannercodes verwaltet werden und in die Seite eingefügt werden. Wäre es nicht schön, wenn man dies automatisieren können? Und hier greift uns Amazon unter die Arme durch die Amazon API. Diese ermöglicht uns den Zugriff auf die Datenbank von Amazon um so selbstständig Artikel von Amazon auszulesen und auf der eigenen Seite darzustellen. Beim WebhostingIndex verfolge ich die Idee, dass die Artikel von Amazon abhängig vom Inhalt der Seite dargestellt werden wie es Google Adwords vormacht. Leider werden wir nicht das gleiche Resultat wie Adwords erreichen, nämlich die komplette Unabhängigkeit, doch zumindest geht das Ergebnis in diese Richtung. Beispielsweise werde ich im Bereich Rootserver Bücher über Linux, Bash, Windows Server etc. anzeigen lassen. Im Bereich Housing werde ich Hardwareartikel wie Prozessoren und Arbeitsspeicher anzeigen und bei Gameservern aktuelle Multiplayerspiele. Amazon erlaubt es uns auf die Datenbank via HTTP zuzugreifen und sendet uns die Daten als XML zurück. Hier zeigt sich bereits wie das Programm arbeiten wird:
Zuerst stellt sich die Frage, wie der HTTP Zugriff aussehen soll. Hier ein Beispiel: Code: ttp://xml-eu.amazon.com/onca/xml3?ManufacturerSearch=O%27Reilly&mode=books-de&sort=%2Bsalesrank&page=1&type=heavy&f=xml&t=webhostingtalk-21&dev-t=0KVCASXM41XKT66GEKG2&locale=de& ManufacturerSearch In diesem Beispiel werden nur Bücher von Herstellern angezeigt, in denen der String O Reilly zu finden ist. mode Dies erlaubt uns die Suche auf bestimmte Artikelgruppe zu reduzieren. In diesem Fall bin ich ausschließlich auf der Suche nach Büchern aus Deutschland. sort Dieser Wert ermöglicht uns die Reihenfolge der einzelnen Produkte zu steuern. page Die Ausgabe von Amazon wird auf 10 Artikel pro Seite beschränkt. Dieser Wert gibt die Seite an, welche aufgerufen wird. type Durch diesen Wert können wir steuern, wie viele Informationen die API an uns senden soll. Bei Heavy haben wir eine sehr ausführliche Wiedergabe, wo zum Beispiel auch die Kundenmeinungen zu finden sind. f Dies gibt das Ausgabeformat an. t Da ich Werbepartner bin, gebe hier meine Werbepartner ID an um meine paar Prozent zu erhalten. dev-t Dies ist der Entwicklerzugangskey, welcher es mir erlaubt die API zu nutzen. Diesen erhaltet ihr bei der Registrierung. locale Und weil ich für den deutschen Raum programmiere, soll es brav alles Deutsch bleiben. Und ja, es gibt noch eine Vielzahl weiterer Möglichkeiten um die API zu kontrollieren, aber das steht auch alles im Handbuch und dieses kannst du sicherlich ohne Probleme dir dann auch selber durchlesen. Also, wir wissen jetzt wie das mit dem Aufruf klappt. Fangen wir mit dem PHP Code an. Ich will natürlich nicht jedesmal die URL von Hand eingeben, sondern viel das automatisiert haben, so dass einfach wie GET oder via POST die entsprechenden Daten angeben muss. PHP-Code: 2. Verarbeiten Nun gilt es sich dem zweiten Punkt des Programms zu lösen. Wie verarbeiten wir unsere XML Datei und dazu nutze ich die Funktion von Simple XML, welche ab PHP5 verfügbar ist. Diese Möglichkeit ist so einfach, dass vermutlich einfacher ist ein Update auf PHP5 durchzuführen als eine Alternative zu finden. PHP-Code: 3. Output Simple XML macht es uns zum Glück extrem einfach nun die Daten auszugeben. Unser Objekt besitzt alle Elemente und diese können wir bequem mir der Funktion foreach ausgeben. PHP-Code: Ich hoffe, dass dies eine Anregung für eure Seite ist und damit den Anfang für euren Shop gemacht worden ist. Geändert von TRS (09.01.2005 um 11:53 Uhr). |
#7
| ||||
| ||||
Ich habe das kleine Script mal etwas erweitert da es mir ein bissl zu langsam ist wenn bei jedem Aufruf erstmal Amazon bemüht wird. Es ist teilweise schon für mich angepasst, so wird jetzt auch z.B. die Grafik für die Bewertung angezeigt etc. PHP-Code: |
#8
| ||||
| ||||
Sieht gut - Ich speicher die Daten in einer MySQL Tabelle um noch etwas mehr Performance rauszuholen. Nachts im vier wird die Tabelle geleert und irgendwelche Suchmaschinen Bots werden dann den Cache schnell wieder aufstocken. |
#9
| ||||
| ||||
Da ich höchstens 3-4 Keywords für die Suche (ohne passende bleibts bei dem einen) habe mach ich mir da keine grosse Mühe |
#10
| ||||
| ||||
Ja mit Amamzon habe ich mich vor einiger Zeit auch mal intensiver beschäftigt. Irgendwie fehlte dann abr wieder die Zeit. http://scripts.justwilliams.com/amazon/index.htm ist auch ein ganz interessanter Shop.... __________________ Jens |
#11
| ||||
| ||||
Komplette Shops habe ich mir auch schon angeschaut, werde davon allerdings Abstand nehmen da es mir nur darum geht zu bestimmten Forendiskussionen Buchtipps anzuzeigen. Ich finde es ne gute Idee, dass Amazon so bereitwillig seine Daten zur eigenen „miss“handlung freigibt. |
#12
| |||
| |||
Hallo, erstmal danke für eure Beiträge, die haben mir schon etwas geholfen...(bin durch google drauf gestoßen) Nun noch eine Frage: Wie muss ich die PHP-Skripte abändern, damit ich auch eine kurze Buchbeschreibung als Antwort bekomme? In der Doku habe ich leider nix gefunden.. Grüße agooddaytofly |
#13
| ||||
| ||||
Also, so weit ich mich erinnern kann gibt es eine Doku in welcher steht welche Variable was enthält. Wenn du mal den Codeschnippsel aus Beitrag #7 (von mir) nimmst und daraus ne URL formst bekommst du ein XML-Dokument welches dir die Struktur preisgibt. Hier mal ne Beispiel: Code: <Details url="##"> <Asin>3898803910</Asin> <ProductName>Oldtimer Katalog</ProductName> <Catalog>Book</Catalog> <Authors> <Author>Günther Zink</Author> </Authors> <ReleaseDate>April 2005</ReleaseDate> <Manufacturer>Heel</Manufacturer> <ImageUrlSmall>http://images-eu.amazon.com/images/P/3898803910.03.THUMBZZZ.jpg</ImageUrlSmall> <ImageUrlMedium>http://images-eu.amazon.com/images/P/3898803910.03.MZZZZZZZ.jpg</ImageUrlMedium> <ImageUrlLarge>http://images-eu.amazon.com/images/P/3898803910.03.LZZZZZZZ.jpg</ImageUrlLarge> <ListPrice>EUR 16,73</ListPrice> <OurPrice>EUR 17,90</OurPrice> <UsedPrice>EUR 14,00</UsedPrice> <ThirdPartyNewPrice>EUR 17,90</ThirdPartyNewPrice> <SalesRank>7.459</SalesRank> <BrowseList> <BrowseNode> <BrowseId>3829701</BrowseId> <BrowseName>Kategorien - Lernen & Nachschlagen - Kataloge - Überblick</BrowseName> </BrowseNode> <BrowseNode> <BrowseId>189212</BrowseId> <BrowseName>Kategorien - Naturwissenschaften & Technik - Ingenieurwissenschaft & Technik - Kraftfahrzeugtechnik - Allgemein</BrowseName> </BrowseNode> </BrowseList> <Media>Broschiert</Media> <Isbn>3898803910</Isbn> <Availability>Versandfertig bei Amazon in 24 Stunden.</Availability> <Reviews> <AvgCustomerRating>4</AvgCustomerRating> <TotalCustomerReviews>1</TotalCustomerReviews> <CustomerReview> <Rating>4</Rating> <Summary>Nachschlagewerk!</Summary> <Comment>Europas größter Marktführer für Klassische Automobile. Das über 300 Seiten starke Nachschlagwerk ist reich illustriert und gibt Auskunft über 150 Marken sowie 1100 Modellen von Abarth bis Zündapp. Auch viele "Youngtimer" werden behandelt. Zu jedem Modell gibt es eine kurze Beschreibung, die wichtigsten Daten, Produktionszahl, Verfügbarkeit am Markt, Ersatzteilsituation und Preisempfehlungen für die Zustandskategorien 1-5.</Comment> </CustomerReview> </Reviews> <SimilarProducts> <Product>3898800490</Product> <Product>3831090092</Product> <Product>3613872617</Product> <Product>3898800997</Product> <Product>3613021099</Product> </SimilarProducts> </Details> Wie man daran erkennen kann findet man höchsten ne Zusammenfassung welche von einem Benutzer geschrieben wird. So wie du es dir gedacht hast geht es dann scheinbar wohl nicht |
#14
| ||||
| ||||
Ganz gut find ich auch das Skript von Mr. Rat http://www.mrrat.com/aws/ Habe daraus mal das folgende gebastelt klick __________________ Jens Geändert von Jens* (12.11.2005 um 12:14 Uhr). |
#15
| ||||
| ||||
Anderes Problem.. Wie bekomme ich Amazon dazu nach Zeitschriften mit dem Schlüsselwort 'Oldtimer' zu suchen? Habe nun folgendes: PHP-Code: |
Stichworte |
- |
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
In einer Klasse auf eine andere Klasse zugreifen | MrNase | Programmierung und Datenbanken | 4 | 13.10.2004 06:46 |