Wenn Sie mit der manuellen Preisdatenextraktion überfordert sind und lernen möchten, wie Sie mithilfe von KI Preise von Amazon extrahieren, sind Sie hier genau richtig. In diesem Blog konzentrieren wir uns auf automatisierte Scraping-Techniken, insbesondere auf solche mit automatisiertem XPath-Abruf. Wir führen Sie durch die Einrichtung Ihres Scraping-Setups, den Einsatz von KI zur präzisen Datenerfassung und die Kunst des automatisierten Datenabrufs mit XPath. Ob kleiner Onlineshop oder großer E-Commerce-Riese – diese Techniken werden Ihre Stärken in der digitalen Welt ausspielen.

Crawlbase Crawling API ermöglicht Ihnen das Scrapen von Amazon-Preisen in Kombination mit Ihrem bevorzugten KI-Tool. Sie können sich anmelden, um unsere gebrauchsfertige Amazon-Schaber; Ihre ersten 1000 Anfragen sind kostenlos.

Crawlbase Crawling API ermöglicht Ihnen das Scrapen von Amazon-Preisen in Kombination mit Ihrem bevorzugten KI-Tool. Sie können sich anmelden, um unsere gebrauchsfertige Amazon-Schaber; Ihre ersten 1000 Anfragen sind kostenlos.

Inhaltsverzeichnis

  1. Bedeutung des automatisierten Amazon Scraping

  2. Erforderliche APIs erkunden

  • Crawlbase Crawling API
  • OpenAI GPT-API
  1. Vorbereitungen
  • Installieren von Python und wichtigen Bibliotheken
  • Erstellen einer virtuellen Umgebung
  • Tokens erwerben für Crawlbase und OpenAI
  1. Automatisierung des Amazon Price Scraping
  • Abrufen des HTML-Codes der Amazon-Suchseite
  • Verwenden von OpenAI zum Extrahieren von Preis-XPath
  • Scraping der Amazon-Produktpreise
  1. Zusammenfassung
  2. Häufig gestellte Fragen (FAQ)

Bedeutung des automatisierten Amazon Scraping

Um Scraping durchführen zu können, müssen Sie den CSS-Selektor oder den XPath-Selektor für die Elemente. Wenn Sie also Tausende von Websites scrapen, müssen Sie den Selektor für jede einzelne manuell ermitteln. Und wenn sich die Seite ändert, müssen Sie auch diese ändern. Hier kommt das automatisierte Web Scraping von Amazon ins Spiel und bietet einen entscheidenden Vorteil für alle, die seine Möglichkeiten effektiv nutzen.

Identifizieren der Daten, die Sie zum Scraping von Amazon-Preisen benötigen

Die Suchseiten von Amazon sind reich an Daten, aber nicht alle sind für Ihre spezifischen Scraping-Ziele relevant. Für effizientes und zielgerichtetes Scraping ist es wichtig, die genauen Datenelemente zu identifizieren, die Sie benötigen:

  • Produktinformationen: Bestimmen Sie, welche Produktdetails für Ihre Ziele wichtig sind. Dazu können Produkttitel, Preise, Kundenbewertungen und Beschreibungen gehören. Die Identifizierung dieser Elemente hilft Ihnen, die richtigen Informationen zu extrahieren.
  • Produkt-URLs: Wenn Sie sich eingehender mit bestimmten Produkten befassen möchten, ist es wichtig, die URLs zu den einzelnen Produktseiten zu erfassen. So können Sie auf detailliertere Informationen zu jedem Artikel zugreifen.
  • Seitennummerierungssteuerung: Um Daten von mehreren Ergebnisseiten zu sammeln, ist es wichtig zu verstehen, wie die Seitennummerierung auf Amazons Suchseiten strukturiert ist. Sie müssen die entsprechenden Elemente finden und verwenden, um effizient durch die Seiten zu navigieren.

Im weiteren Verlauf dieses Blogs wenden wir dieses Wissen auf unsere automatisierten Scraping-Techniken an. Sie erfahren, wie Sie die benötigten Daten auf den Suchseiten von Amazon finden und extrahieren, sodass Sie wertvolle Erkenntnisse gewinnen und datengesteuerte Entscheidungen in der Welt des E-Commerce treffen können.

So scrapen Sie Amazon-Preise: Schritt für Schritt

Bevor Sie mit dem automatisierten Scraping beginnen, müssen Sie sicherstellen, dass Sie über die richtigen Tools und die richtige Einrichtung verfügen. Dieser Abschnitt behandelt die ersten Vorbereitungsschritte, einschließlich der Installation von Python, der Erstellung einer virtuellen Umgebung und der Beschaffung der erforderlichen Token für Crawlbase und OpenAI.

1. Installieren Sie Python und wichtige Bibliotheken

Python ist der Eckpfeiler von Web Scraping-Projekten und mehrere Bibliotheken spielen dabei eine entscheidende Rolle. Stellen Sie zunächst sicher, dass Sie Python und die folgenden Bibliotheken installiert haben:

Python-Installation: Wenn Sie Python nicht installiert haben, laden Sie die neueste Version von der offiziellen Python-Website herunter und folgen Sie den Installationsanweisungen für Ihr Betriebssystem.

Erforderliche Bibliotheken: Um diesem Blog erfolgreich folgen zu können, werden die folgenden Bibliotheken benötigt.

  1. Crawlbase Python-Bibliothek: Zur Interaktion mit dem Crawlbase Crawling API, du wirst das brauchen Crawlbase Python-Bibliothek. Diese Bibliothek vereinfacht den Prozess der Anfragen an Crawlbase für Web Scraping. Installieren Sie es mit:
1
pip installieren crawlbase
  1. OpenAI-Python-Bibliothek: Da Sie OpenAIs GPT verwenden, um XPath zu erhalten, müssen Sie die OpenAI Python-Bibliothek installieren. Diese Bibliothek ermöglicht Ihnen eine effektive Interaktion mit den APIs von OpenAI. Installieren Sie sie mit:
1
pip openai installieren
  1. lxml: Die Python-Bibliothek lxml ist ein robustes und effizientes Tool zum Parsen und Arbeiten mit XML- und HTML-Dokumenten. Sie bietet eine leistungsstarke und benutzerfreundliche Schnittstelle zum Navigieren und Bearbeiten strukturierter Daten.
1
pip lxml installieren

2. Erstellen Sie eine virtuelle Umgebung

Das Erstellen einer virtuellen Umgebung ist eine bewährte Methode in der Python-Entwicklung. Dadurch wird sichergestellt, dass Ihr Projekt über eine isolierte Umgebung mit den erforderlichen Paketen verfügt. So richten Sie eine virtuelle Umgebung ein:

  1. Installieren Sie Virtualenv: Wenn Sie virtualenv nicht installiert haben, können Sie dies mit pip tun:
1
pip installieren virtualenv
  1. Erstellen Sie eine virtuelle Umgebung: Navigieren Sie zu Ihrem Projektverzeichnis und führen Sie den folgenden Befehl aus, um eine virtuelle Umgebung zu erstellen:
1
virtualenv venv
  1. Aktivieren der virtuellen Umgebung: Abhängig von Ihrem Betriebssystem kann der Aktivierungsbefehl unterschiedlich sein:
  • Unter Windows:
1
venv\Scripts\aktivieren
  • Unter MacOS und Linux:
1
Quelle venv/bin/aktivieren

Ihre virtuelle Umgebung ist nun eingerichtet und aktiviert. Sie können projektspezifische Pakete installieren, ohne Ihre systemweite Python-Installation zu beeinträchtigen.

3. Token erwerben für Crawlbase und OpenAI

So verwenden Sie die Crawlbase Crawling API und OpenAI GPT API benötigen Sie die erforderlichen Token oder API-Schlüssel. So erhalten Sie sie:

Crawlbase Token: Besuche den Crawlbase Website und melde dich für ein Konto an. Sobald du registriert bist, findest du deinen API-Token oder -Schlüssel im Dokumentation. Crawlbase bietet zwei Arten von Token: den Normal Token (TCP) für statische Websites und den JavaScript Token (JS) für dynamische oder JavaScript-basierte Websites. Für Amazon benötigen wir einen JS-Token. Bewahren Sie diesen Token sicher auf, da er für den Zugriff auf die Crawlbase API. Für einen einfachen Start, Crawlbase gibt 1000 kostenlose Anfragen für seine Crawling API.

OpenAI GPT-Token: Besuche den OpenAI-Website und erstellen Sie ein Konto, falls Sie dies noch nicht getan haben. Greifen Sie über Ihre OpenAI-Kontoeinstellungen auf Ihr API-Token zu. Dieses Token ist für Anfragen an die OpenAI GPT API erforderlich.

In den folgenden Abschnitten dieses Blogs führen wir Sie durch die praktischen Schritte zum effizienten und effektiven Scrapen von Produktpreisen von den Suchseiten von Amazon. Bleiben Sie dran, während wir die Tools und Techniken erkunden, die Ihnen im E-Commerce einen Wettbewerbsvorteil verschaffen.

Automatisierung des Amazon Price Scraping

Nachdem Sie nun gut vorbereitet und mit den notwendigen Tools und Token ausgestattet sind, ist es an der Zeit, in das Herz des automatisierten Scrapings einzutauchen. Dieser Abschnitt führt Sie durch die detaillierten Schritte zum Scraping von Amazon-Produktpreisen mithilfe von Crawlbase Crawling API und OpenAI.

Abrufen des HTML-Codes der Amazon-Suchseite

Der erste Schritt zur Automatisierung des Preis-Scrapings besteht darin, den HTML-Inhalt der Amazon-Suchseiten abzurufen. In diesem HTML-Inhalt sind die Produktinformationen, einschließlich der Preise, eingebettet. Wie viele moderne Websites verwenden auch die Amazon-Suchseiten anspruchsvolle Technologien wie JavaScript und Ajax, um ihre Inhalte zu laden. Dies kann das Scraping von Daten von diesen Seiten erschweren. Aber mit der Crawlbase Crawling API, Sie haben die Werkzeuge, um diese Herausforderungen effektiv zu meistern. Unten finden Sie das Python-Skript zum Abrufen des HTML der Amazon-Suchseite für die Abfrage „Macbook“.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
von Crawlbase importieren CrawlingAPI

# Initialisieren Sie die Crawling API mit Ihrem Crawlbase Zeichen
api = CrawlingAPI({ 'Zeichen': „SIE_CRAWLBASE_JS_TOKEN“ })

# URL der Amazon-Suchseite, die Sie scrapen möchten
amazon_search_url = „https://www.amazon.com/s?k=macbook“

# Optionen für Crawling API
Optionen = {
'Seite_warten': 2000,
'ajax_wait': "wahr"
}

# Stellen Sie eine Anfrage zum Scrapen der Amazon-Suchseite mit Optionen
Antwort = api.get(amazon_search_url, Optionen)

# Überprüfen Sie, ob die Anfrage erfolgreich war
if Antwort['Statuscode'] == 200:
# Extrahierter HTML-Inhalt nach dem Dekodieren von Byte-Daten
html_content = Antwort['Körper'].dekodieren('lateinisch1')

# Speichern Sie den HTML-Inhalt in einer Datei
mit elektrostatisch ableitenden XNUMXh geöffnet('ausgabe.html', 'w', Kodierung='utf-8') as Datei:
datei.schreiben(html_inhalt)
sonst:
drucken(„Die Seite konnte nicht abgerufen werden. Statuscode:“, Antwort['Statuscode'])

Bei Verwendung des JavaScript-Tokens mit dem Crawlbase API: Sie können einige spezielle Parameter angeben, um sicherzustellen, dass Sie den dynamisch gerenderten Inhalt korrekt erfassen. Weitere Informationen finden Sie hier.

  • Seite_warten: Mit diesem optionalen Parameter können Sie die Anzahl der Millisekunden angeben, die gewartet werden soll, bevor der Browser den resultierenden HTML-Code erfasst. Verwenden Sie diesen Parameter in Situationen, in denen das Rendern einer Seite einige Zeit in Anspruch nimmt oder wenn AJAX-Anfragen geladen werden müssen, bevor das HTML erfasst wird.
  • ajax_wait: Ein weiterer optionaler Parameter für das JavaScript-Token. Damit können Sie angeben, ob auf die Fertigstellung von AJAX-Anfragen gewartet werden soll, bevor die HTML-Antwort empfangen wird. Dies ist wichtig, wenn der Inhalt auf AJAX-Anfragen basiert.

output.html Vorschau:

Gecrawlte HTML-Vorschau

Verwenden von OpenAI zum Extrahieren von Preis-XPath

In unserem Bestreben, die Extraktion von Produktpreisen aus den Suchseiten von Amazon zu automatisieren, greifen wir auf die bemerkenswerten Fähigkeiten von OpenAI zurück, insbesondere auf das GPT-Modell (Generative Pre-trained Transformer). Lassen Sie uns das vorherige Beispiel aktualisieren und den Code hinzufügen, um OpenAI zu nutzen, um präzise XPath-Ausdrücke für die effektive Extraktion von Produktpreisen aus HTML-Inhalten zu generieren. GPT-4-Eingabeaufforderungen für optimale Genauigkeit:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
importieren öffnen
importieren Asyncio
von Crawlbase importieren CrawlingAPI

# Ersetzen Sie „your_openai_api_key“ durch Ihren OpenAI-API-Schlüssel
openai.api_key = „Ihr_OpenAI_API_Schlüssel“

# Initialisieren Sie die Crawling API mit Ihrem Crawlbase Zeichen
api = CrawlingAPI({ 'Zeichen': „SIE_CRAWLBASE_JS_TOKEN“ })

# URL der Amazon-Suchseite, die Sie scrapen möchten
amazon_search_url = „https://www.amazon.com/s?k=macbook“

# Optionen für Crawling API
Optionen = {
'Seite_warten': 2000
}

async def get_xpath(html):
Antwort = – warten auf Sie! openai.Completion.create(
Motor ="gpt-3.5-turbo",
Nachrichten=[
{"Rolle": "System", "Inhalt": „Als unterstützende Instanz besteht Ihre Rolle darin, den umfassenden XPath-Ausdruck, der den Pfad von der HTML-Quelle zum Produktpreiselement innerhalb der Eingabeaufforderung umfasst, gekonnt zu identifizieren. Ihre Antwort sollte ausschließlich aus dem vollständigen XPath bestehen, ohne ergänzende Erklärungen, Hinweise oder zusätzlichen Text. Mehrfache Wiederholungen derselben Antwort sind zulässig.“},
{"Rolle": "Nutzer", "Inhalt": html}
]
)
Rückkehr Antwort.Auswahl[0].Nachricht["Inhalt"]

async def Haupt-
# Stellen Sie eine Anfrage zum Scrapen der Amazon-Suchseite mit Optionen
Antwort = api.get(amazon_search_url, Optionen)

# Überprüfen Sie, ob die Anfrage erfolgreich war
if Antwort['Statuscode'] == 200:
# Extrahierter HTML-Inhalt nach dem Dekodieren von Byte-Daten
html_content = Antwort['Körper'].dekodieren('lateinisch1')
xpath = – warten auf Sie! get_xpath(html_inhalt)
drucken(xpath)
sonst:
drucken(„Die Seite konnte nicht abgerufen werden. Statuscode:“, Antwort['Statuscode'])

if __name__ == "__hauptsächlich__":
asyncio.run(main())

Dieser Code ist die Brücke zwischen Ihrem HTML-Inhalt und den präzisen XPath-Ausdrücken, die zum Suchen und Extrahieren von Produktpreisen erforderlich sind. Er initiiert die Kommunikation mit der GPT-3.5 Turbo-Engine von OpenAI, stellt Anweisungen bereit und empfängt generierte XPath-Ausdrücke, die auf Ihre Scraping-Anforderungen zugeschnitten sind. Der generierte XPath steht dann für Ihre Web-Scraping-Aufgaben sofort zur Verfügung, was den Prozess rationalisiert und die Präzision verbessert.

4. Scraping der Amazon-Produktpreise

Um Ihr Scraping-Erlebnis auf die nächste Ebene zu bringen, erweitern wir das vorherige Beispielskript um eine Funktion namens find_max_price. Diese Funktion verwendet die Python-Bibliothek lxml, um den HTML-Inhalt zu analysieren und alle Produktpreise basierend auf dem generierten XPath-Ausdruck auszuwählen. Anschließend konvertiert sie die ausgewählten Preiszeichenfolgen in numerische Werte und ermittelt den höchsten Preis mithilfe des max() Funktion. Schließlich druckt das Skript den höchsten Macbook-Preis aus, der auf der Amazon-Suchseite gefunden wurde, und liefert Ihnen so einen wertvollen Datenpunkt.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
importieren öffnen
importieren Asyncio
importieren lxml
von Crawlbase importieren CrawlingAPI

# Ersetzen Sie „your_openai_api_key“ durch Ihren OpenAI-API-Schlüssel
openai.api_key = „Ihr_OpenAI_API_Schlüssel“

# Initialisieren Sie die Crawling API mit Ihrem Crawlbase Zeichen
api = CrawlingAPI({ 'Zeichen': „SIE_CRAWLBASE_JS_TOKEN“ })

# URL der Amazon-Suchseite, die Sie scrapen möchten
amazon_search_url = „https://www.amazon.com/s?k=macbook“

# Optionen für Crawling API
Optionen = {
'Seite_warten': 2000
}

async def get_xpath(html):
Antwort = – warten auf Sie! openai.Completion.create(
Motor ="gpt-3.5-turbo",
Nachrichten=[
{"Rolle": "System", "Inhalt": „Ihre Rolle als unterstützende Instanz besteht darin, den allumfassenden XPath-Ausdruck, der den Pfad von der HTML-Quelle zu den Produkttitel- und Preiselementen innerhalb der Eingabeaufforderung nachverfolgt, fachgerecht zu ermitteln. Ihre Antwort sollte ausschließlich den vollständigen XPath für beide Elemente enthalten, ohne zusätzliche Erklärungen, Anmerkungen oder zusätzlichen Text. Die mehrmalige Wiederholung derselben Antwort ist zulässig.“},
{"Rolle": "Nutzer", "Inhalt": html}
]
)
Rückkehr Antwort.Auswahl[0].Nachricht["Inhalt"]

def Höchstpreis finden(html_content, xpath):
parsed_html = html.fromstring(html_inhalt)
# Verwenden Sie den generierten XPath-Ausdruck, um Produktpreise auszuwählen und zu extrahieren
Preiszeichenfolgen = parsed_html.xpath(xpath)

# Preiszeichenfolgen in Float-Werte umwandeln
Preise = [schweben(Preis) für Preis in Preis_Zeichenfolgen]

# Finden Sie den höchsten Preis
höchster_preis = max(Preise)

# Drucken Sie den höchsten Preis
drucken(„Der höchste MacBook-Preis ist:“, höchster_Preis)

async def Haupt-
# Stellen Sie eine Anfrage zum Scrapen der Amazon-Suchseite mit Optionen
Antwort = api.get(amazon_search_url, Optionen)

# Überprüfen Sie, ob die Anfrage erfolgreich war
if Antwort['Statuscode'] == 200:
# Extrahierter HTML-Inhalt nach dem Dekodieren von Byte-Daten
html_content = Antwort['Körper'].dekodieren('lateinisch1')
xpath = – warten auf Sie! get_xpath(html_inhalt)

find_max_price(html_inhalt, xpath)

sonst:
drucken(„Die Seite konnte nicht abgerufen werden. Statuscode:“, Antwort['Statuscode'])

if __name__ == "__hauptsächlich__":
asyncio.run(main())

Beispielausgabe:

1
Der höchste MacBook-Preis beträgt: 5,299

Mit dieser Ergänzung ruft Ihr Scraping-Skript jetzt nicht nur Daten ab, sondern verarbeitet sie auch, um Ihnen wertvolle Erkenntnisse zu liefern, wie z. B. den höchsten Macbook-Preis, der auf der Amazon-Suchseite gefunden wurde. Vielleicht möchten Sie auch wissen, wie Sie die Paginierung beim Scraping handhaben und die Ergebnisse in einem geeigneten Format speichern. Hierzu können Sie sich auf Folgendes beziehen Blog. Genießen Sie Ihre erweiterten Scraping-Funktionen!

Fazit

Wir hoffen, dieser Blogbeitrag hilft Ihnen, Ihre Scraping-Aktivitäten zu automatisieren und Ihnen viel Zeit zu sparen. Wenn Sie Walmart-Produktdaten oder deren Suchseiten scrapen möchten, lesen Sie die folgenden Anleitungen:

📜 So scrapen Sie Amazon-Bewertungen
📜 So scrapen Sie Amazon-Suchseiten
📜 So kratzen Sie Amazon-Produktdaten

Weitere Anleitungen finden Sie unter Scraping von Amazon-ASINs, Amazon-Bewertungen in Node, Amazon Bilder und Amazon-Daten in Ruby. Weitere E-Commerce Scraping-Anleitungen, die über Walmart hinausgehen, finden Sie in unseren Tutorials zum Scraping von Produktdaten von Walmart, eBay und AliExpress.

Wenden Sie sich gerne an uns hier wenn Sie weitere Hilfe benötigen oder zusätzliche Fragen haben.

Häufig gestellte Fragen (FAQ)

F: Was soll ich mit den gesammelten Amazon-Preisdaten machen?

Was Sie mit den von Amazon gesammelten Preisdaten machen, hängt weitgehend von Ihren Absichten und der Einhaltung der einschlägigen gesetzlichen Bestimmungen ab. Wenn Sie die Daten für den persönlichen Gebrauch oder zur Analyse verwenden möchten, können Sie dies normalerweise tun, solange dies den Geschäftsbedingungen von Amazon und den geltenden Web Scraping-Gesetzen in Ihrer Region entspricht. Das Teilen, Verkaufen oder Veröffentlichen von gesammelten Daten, insbesondere für kommerzielle Zwecke, erfordert jedoch häufig die ausdrückliche Genehmigung von Amazon.

F: Welche Vorteile bietet das automatisierte Scraping von Amazon für mein E-Commerce-Geschäft?

Automatisiertes Scraping bietet E-Commerce-Unternehmen mehrere Vorteile. Sie können damit das Scraping von Preisen und Produktangeboten der Konkurrenz kontinuierlich überwachen. Es bietet detaillierte Einblicke in Produkttrends, Kundenpräferenzen und Marktanforderungen, die für die Produktentwicklung und gezieltes Marketing von unschätzbarem Wert sind. Darüber hinaus sorgen genaue und aktuelle Produktinformationen auf Ihrer E-Commerce-Website für ein nahtloses Einkaufserlebnis für Kunden.

F: Kann ich das automatisierte Scraping von Amazon anpassen, um Änderungen im Website-Layout zu verarbeiten?

Ja, automatisiertes Scraping kann sich an Änderungen im Layout von Amazon-Websites anpassen. Wenn Websites ihr Design oder ihre Struktur aktualisieren, kann automatisiertes Scraping Techniken wie CSS-Selektoren und flexible XPath-Ausdrücke nutzen, um eine unterbrechungsfreie Datenerfassung sicherzustellen. Diese Anpassungsfähigkeit ist wertvoll und ermöglicht es Ihnen, auch bei verändertem Erscheinungsbild Ihrer Websites genaue und aktuelle Daten zu erhalten.

F: Was ist ein Amazon-Preis-Scraper?

Ein Amazon-Preis-Scraper ist ein Tool oder Skript, das automatisch Produktpreise von Amazon extrahiert. Es ahmt die menschliche Nutzung von Amazon nach und sammelt Preisinformationen für Produkte in Echtzeit, einschließlich Rabatten, Originalpreisen und Preisänderungen im Laufe der Zeit.