Sie möchten Zalando scrapen? Dann sind Sie hier richtig. Zalando ist eine der führenden Online-Shopping-Sites für Mode mit einem riesigen Sortiment an Artikeln von Kleidung bis hin zu Accessoires. Vielleicht betreiben Sie Marktforschung oder entwickeln eine Mode-App – in jedem Fall kann es hilfreich sein zu wissen, wie Sie gute Daten direkt von der Site erhalten.

In diesem Blog zeigen wir Ihnen, wie Sie einen zuverlässigen Zalando Scraper erstellen mit Puppenspieler - ein bekanntes Web Scraping Tool. Sie erfahren, wie Sie Produktdetails wie Preise, Größen und Lagerbestände herausziehen. Wir geben Ihnen auch Tipps zum Umgang mit CAPTCHA, IP-Blockierung und zur Skalierung Ihres Scrapers mit Crawlbase Smart Proxy.

Lass uns loslegen!

Inhaltsverzeichnis

  1. Warum Zalando nach Produktdaten durchsuchen?
  2. Wichtige Datenpunkte zum Extrahieren von Zalando
  3. Einrichten Ihrer Node.js-Umgebung
  • Node.js installieren
  • Erforderliche Bibliotheken installieren
  • Auswahl einer IDE
  1. Scraping von Zalando-Produktlisten
  • Überprüfen des HTML auf Selektoren
  • Den Zalando Product Listings Scraper schreiben
  • Umgang mit Paginierung
  • Speichern von Daten in einer JSON-Datei
  1. Scraping Zalando Produktdetails
  • Überprüfen des HTML auf Selektoren
  • Schreiben des Zalando Product Details Scrapers
  • Speichern von Daten in einer JSON-Datei
  1. Optimieren mit Crawlbase Smart Proxy
  • Was ist Crawlbase Smart Proxy?
  • So verwenden Sie Crawlbase Smart Proxy mit Puppenspieler
  • Vorteile der Verwendung von Crawlbase Smart Proxy
  1. Abschließende Überlegungen
  2. Häufig gestellte Fragen

Warum Zalando nach Produktdaten durchsuchen?

Das Scraping von Zalando ist eine großartige Möglichkeit, Produktdaten für verschiedene Zwecke zu erhalten. Egal, ob Sie Preise überwachen, die Produktverfügbarkeit verfolgen oder Modetrends analysieren, der Zugriff auf diese Daten verschafft Ihnen einen Vorteil. Zalando ist eine der größten Online-Modeplattformen in Europa mit einer breiten Produktpalette von Schuhen und Kleidung bis hin zu Accessoires.

Durch das Scraping von Zalando können Sie Produktnamen, Preise, Bewertungen und Verfügbarkeit extrahieren. Diese Daten können verwendet werden, um Preise zu vergleichen, datengesteuerte Marketingstrategien zu entwickeln oder sogar einen automatisierten Preistracker zu erstellen. Wenn Sie ein E-Commerce-Geschäft betreiben oder einfach nur die neuesten Modetrends im Auge behalten möchten, hilft Ihnen das Scraping der Produktdaten von Zalando dabei, immer einen Schritt voraus zu sein.

Wenn Sie einen Scraper verwenden, um Daten von Zalando abzurufen, sparen Sie sich die Zeit und Mühe, Produktinformationen manuell zu suchen und zu kopieren. Mit der richtigen Einrichtung können Sie Tausende von Produktdetails in kürzester Zeit und effizient abrufen und so Ihren Datenerfassungsprozess optimieren.

Wichtige Datenpunkte zum Extrahieren von Zalando

Beim Scraping von Zalando können Sie mehrere wichtige Produktinformationen extrahieren. Diese Details sind nützlich, um Trends zu verfolgen, Preise zu verstehen oder Marktverhalten zu analysieren. Im Folgenden finden Sie die wichtigsten Datenpunkte, auf die Sie sich konzentrieren sollten:

Wichtige Datenpunkte zum Scrapen von Zalando
  • Produktname: Der Produktname hilft Ihnen bei der Identifizierung und Kategorisierung des Verkaufsangebots.
  • Produktpreis: Die Kenntnis des Preises einschließlich Rabatte ist für die Beobachtung von Preistrends und den Vergleich mit Wettbewerbern von entscheidender Bedeutung.
  • Beschreibung: Hier finden Sie spezifische Informationen zum Produkt, beispielsweise Material, Stil und andere wichtige Merkmale.
  • Produktrezensionen: Bewertungen liefern Informationen zur Produktqualität und -popularität und sind nützlich für die Stimmungsanalyse.
  • Produktverfügbarkeit: Wenn Sie prüfen, ob ein Produkt auf Lager ist, können Sie die Nachfrage besser einschätzen und sehen, wie schnell sich die Artikel verkaufen.
  • Produktbilder: Bilder vermitteln eine klare Vorstellung des Produkts, was für das Verständnis von Modetrends und -stilen wichtig ist.
  • Markenname: Die Kenntnis der Marke ermöglicht eine bessere Analyse der Markenleistung und einen Vergleich verschiedener Marken.

Einrichten Ihrer Node.js-Umgebung

Um Zalando effizient zu scrapen, müssen Sie Ihre Node.js-Umgebung konfigurieren. Dieser Prozess umfasst die Installation von Node.js, der erforderlichen Bibliotheken und die Auswahl einer geeigneten integrierten Entwicklungsumgebung (IDE). So gehen Sie Schritt für Schritt vor:

Node.js installieren

  1. Laden Sie Node.js herunter: Gehen Sie zum Beamten Node.js-Website um die neueste Version für Ihr Betriebssystem zu erhalten. Node.js wird mit npm (Node Package Manager) geliefert, mit dem Sie andere Bibliotheken installieren können.
  2. Installieren Sie Node.js: Folgen Sie den Installationsanweisungen für Ihr Betriebssystem. Sie können überprüfen, ob es installiert ist, indem Sie Ihr Terminal oder Ihre Eingabeaufforderung öffnen und Folgendes eingeben:
1
Knoten -v

Dieser Befehl sollte die installierte Version von Node.js anzeigen.

Erforderliche Bibliotheken installieren

  1. Einen neuen Projektordner erstellen: Erstellen Sie einen Ordner für Ihr Scraping-Projekt. Öffnen Sie das Terminal in diesem Ordner.
  2. Npm initialisieren: Führen Sie in Ihrem Projektordner Folgendes aus:
1
npm init -y

Dieser Befehl erstellt eine package.json Datei, die die Abhängigkeiten Ihres Projekts verfolgt.

  1. Erforderliche Bibliotheken installieren: Sie benötigen einige Bibliotheken, um das Scraping zu vereinfachen. Installieren Sie Puppeteer und alle anderen Bibliotheken, die Sie möglicherweise benötigen:
1
npm installiert Puppeteer Axios
  1. Erstellen der Hauptdatei: Erstellen Sie in Ihrem Projektordner eine Datei mit dem Namen scraper.js. Diese Datei enthält Ihren Scraping-Code.

Auswahl einer IDE

Die Auswahl einer IDE kann das Codieren erleichtern. Einige der beliebtesten IDEs sind:

  • Visual Studio Code: Beliebter Editor mit vielen Erweiterungen für die Arbeit mit JavaScript.
  • Websturm: Eine leistungsstarke IDE, die speziell für JavaScript und Webentwicklung entwickelt wurde, aber nicht kostenlos ist.
  • Atom: Ein hackbarer Texteditor, der anpassbar und benutzerfreundlich ist.

Nachdem Sie nun Ihre Umgebung eingerichtet haben und scraper.js erstellt. Beginnen wir mit dem Scraping der Zalando-Produktlisten.

Scraping von Zalando-Produktlisten

Nachdem wir die Umgebung eingerichtet haben, können wir mit der Erstellung des Scrapers für Zalando-Produktlisten beginnen. Wir werden den Abschnitt Handtaschen von dieser URL scrapen:

https://en.zalando.de/catalogue/?q=handbags

Wir extrahieren die Produktseiten-URL, den Titel, den Shopnamen, den Preis und die Bild-URL aus jedem Eintrag. Wir kümmern uns auch um die Seitennummerierung, um mehrere Seiten abzudecken.

Überprüfen des HTML auf Selektoren

Zuerst müssen wir das HTML der Produktlistenseite überprüfen, um die richtigen Auswahlmöglichkeiten zu finden. Öffnen Sie die Entwicklertools in Ihrem Browser und navigieren Sie zu den Handtaschenlisten.

Screenshot der HTML-Produktlisten von Zalando

Normalerweise suchen Sie nach Elementen wie:

  • Produktseite URL: Dies ist der Link zur einzelnen Produktseite.
  • Produkttitel: Normalerweise in einem <h3> Tag innerhalb eines <div> Element.
  • Markenname: Dies finden Sie in einem <h3> Tag innerhalb eines <div> Element.
  • Preis: Gefunden in einem <span> Etikett mit einer Preisklasse.
  • Bild-URL: Enthalten in der <img> Tag innerhalb jeder Produktkarte.

Den Zalando Product Listings Scraper schreiben

Jetzt, da Sie die Selektoren haben, können Sie einen Scraper schreiben, um Produktlisten zu sammeln. Hier ist ein Beispiel-Codeausschnitt mit Puppeteer:

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
const Puppenspieler = erfordern('Puppenspieler');

// Funktion zum Scrapen von Produktlistings von Zalando
async Funktion Produktlisten abkratzen(Seite) {
– warten auf Sie! goto('https://de.zalando.de/catalogue/?q=handtaschen', { Timeout: 0 });

// Scraping von Produktlisten
const Produkte = – warten auf Sie! bewerten(() => {
Rückkehr Feld.für(Dokument.querySelectorAll('div[data-zalon-partner-target="true"] > div.cYylcv.BaerYO')).Karte(
(Karte) => {
const Titel = Karte.querySelector(„div.Zhr-fS h3:letztes-Kind“)?.innererText; // Produkttitel
const StoreName = Karte.querySelector(„div.Zhr-fS h3:erstes-Kind“)?.innererText; // Name des Shops
const Preis = Karte.querySelector(„span.sDq_FX.lystZ1“)?.innererText; // Preis
const Produkt-URL = Karte.querySelector('A')?.href; // Produkt-URL
const Miniaturansicht = Karte.querySelector(„img:erstes-Kind“)?.src; // Bild-URL

Rückkehr { Titel, Storename, Preis, Produkt-URL, Miniaturansicht };
},
);
});

Rückkehr Produkte;
}

(async () => {
const Browser = – warten auf Sie! Puppenspieler.starten();
const Seite = – warten auf Sie! Browser.neue Seite();

const Produktlisten = – warten auf Sie! Produktlisten abkratzen(Seite);
trösten.Log(„Produktlisten:“, Produktlisten);

– warten auf Sie! Browser.schließen();
}) ();

Code Erklärung:

  • scrapeProductListings Funktion: Diese Funktion navigiert mit unbegrenztem Zeitlimit zur Zalando-Produktseite und extrahiert den Produkttitel, den Preis, die URL und die Bild-URL.
  • Datensammlung: Die Funktion gibt ein Array von Produktobjekten zurück, die die extrahierten Informationen enthalten.

Beispielausgabe:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
Produkt Inserate: [
{
Titel: 'Handtasche - schwarz',
Markenname: 'Anna Feld',
Preis : '34,99 €',
ProduktURL: 'https://de.zalando.de/anna-field-handtasche-schwarz-an651h0x2-q11.html',
Daumennagel: 'https://img01.ztat.net/article/spp-media-p1/4ce13463cf9a4dda9828bfc44f65bb6e/45133485dd0c4b03b1b122f0deeb0801.jpg?imwidth=300&filter=packshot'
},
{
Titel: 'LEDER - Handtasche - schwarz',
Markenname: 'Zign',
Preis : '49,99 €',
ProduktURL: 'https://de.zalando.de/zign-handtasche-schwarz-zi151h08a-q11.html',
Daumennagel: 'https://img01.ztat.net/article/spp-media-p1/a86e1fd894b33f8388ed33009cb6cfd2/62c903c4162141fa8c1452be53635f02.jpg?imwidth=300&filter=packshot'
},
{
Titel: 'NOELLE TOP ZIP SHOULDER BAG - Handtasche - Kohle-Logo',
Markenname: 'Erraten',
Preis : '124,95 €',
ProduktURL: 'https://de.zalando.de/guess-noelle-top-zip-shoulder-bag-handbag-coal-logo-gu151h4zp-c11.html',
Daumennagel: 'https://img01.ztat.net/article/spp-media-p1/b6c00ad1942e4b439808bf3099e035ab/38798e461de54ddfad6a33d6f1ab5e42.jpg?imwidth=300&filter=packshot'
},
.... mehr
]

Umgang mit Paginierung

Um mehr Einträge zu sammeln, müssen Sie die Paginierung handhaben. Zalando verwendet die &p= Parameter in der URL, um zwischen Seiten zu navigieren. So ändern Sie Ihren Scraper, um mehrere Seiten zu verarbeiten:

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
async Funktion AlleProduktlisten abkratzen(Seite, Gesamtseiten) {
lassen alleProdukte = [];

für (lassen i = 1; i <= Gesamtseiten; i++) {
const URL = `https://en.zalando.de/catalogue/?q=handbags&p=${i}`;
– warten auf Sie! goto(URL);
– warten auf Sie! warteAufAuswahl(„.Produktkarte“); // Warten Sie, bis die Produktkarten geladen sind

const Produkte = – warten auf Sie! Produktlisten abkratzen(Seite);
alleProdukte = alleProdukte.concat(Produkte); // Produkte von allen Seiten kombinieren
}

Rückkehr alleProdukte;
}

(async () => {
const Browser = – warten auf Sie! Puppenspieler.starten();
const Seite = – warten auf Sie! Browser.neue Seite();

const Gesamtseiten = 5; // Geben Sie die Gesamtzahl der Seiten an, die Sie scrapen möchten
const alleProduktListings = – warten auf Sie! AlleProduktlisten abkratzen(Seite, Gesamtseiten);
trösten.Log(„Alle Produktlisten:“, alleProduktlisten);

– warten auf Sie! Browser.schließen();
}) ();

Code Erklärung:

  • scrapeAllProductListings Funktion: Diese Funktion durchläuft die angegebene Anzahl von Seiten, erstellt die URL für jede Seite und ruft die scrapeProductListings Funktion zum Sammeln von Daten von jeder Seite.
  • Handhabung der Paginierung: Produkte von allen Seiten werden in einem einzigen Array zusammengefasst.

Speichern von Daten in einer JSON-Datei

Schließlich ist es sinnvoll, die Scraped-Daten zur späteren Analyse in einer JSON-Datei zu speichern. So geht's:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
const Puppenspieler = erfordern('Puppenspieler');
const fs = erfordern('fs');

// Kopieren Sie die Funktionen scrapeAllProductListings und scrapeProductListings aus vorherigen Codeausschnitten

// Funktion zum Speichern der Scraped-Daten in einer JSON-Datei
Funktion saveDataToJson(Daten, Dateiname = 'zalando_product_listings.json') {
fs.SchreibeFileSync(Dateiname, JSON.stringifizieren(Daten, null, 2));
trösten.Log(`Daten erfolgreich gespeichert in ${Dateiname}`);
}

(async () => {
const Browser = – warten auf Sie! Puppenspieler.starten();
const Seite = – warten auf Sie! Browser.neue Seite();

const Gesamtseiten = 5; // Geben Sie die Gesamtzahl der Seiten an, die Sie scrapen möchten
const alleProduktListings = – warten auf Sie! AlleProduktlisten abkratzen(Seite, Gesamtseiten);

// Ausgelesene Produktlisten in einer JSON-Datei speichern
saveDataToJson(alleProduktlisten);

– warten auf Sie! Browser.schließen();
}) ();

Code Erklärung:

  • saveDataToJson Funktion: Diese Funktion speichert die gescrapten Produktlisten in einer JSON-Datei (zalando_product_listings.json), damit Sie problemlos auf die Daten zugreifen können

Als Nächstes besprechen wir, wie man Produktdaten von einzelnen Produktseiten extrahiert.

Scraping Zalando Produktdetails

Nachdem Sie die Angebote gescrapt haben, besteht der nächste Schritt darin, Daten von einzelnen Produktseiten zu sammeln. Auf diese Weise erhalten Sie spezifischere Daten wie Produktbeschreibungen, Materialdetails und Kundenbewertungen, die auf den Angebotsseiten nicht verfügbar sind.

Um die Produktdetails zu scrapen, untersuchen wir zunächst die Struktur der Produktseite und identifizieren die relevanten HTML-Elemente, die die benötigten Daten enthalten.

Überprüfen des HTML auf Selektoren

Besuchen Sie eine beliebige einzelne Produktseite von Zalando und verwenden Sie die Entwicklertools Ihres Browsers, um die HTML-Struktur zu überprüfen.

Screenshot der HTML-Produktseite von Zalando

Normalerweise müssen Sie Elemente wie die folgenden finden:

  • Produkttitel: Normalerweise innerhalb eines <span> Tag mit Klassen wie EKabf7 R_QwOV.
  • Markenname: Normalerweise innerhalb eines <span> Tag mit Klassen wie z2N-Fg yOtBvf.
  • Produktdetails: Befindet sich in einem <div> . data-testid="pdp-accordion-details".
  • Preis: In einem <span> Tag mit Klassen wie dgII7d Km7l2y.
  • Verfügbare Größen: Oft aufgeführt in <div> . data-testid="pdp-accordion-size_fit".
  • Bild-URLs: Enthalten in der <img> Tag innerhalb eines <ul> mit Klassen wie XLgdq7 _0xLoFW.

Schreiben des Zalando Product Details Scrapers

Sobald Sie die richtigen Selektoren haben, können Sie einen Scraper schreiben, um Produktdetails wie Titel, Beschreibung, Preis, verfügbare Größen und Bild-URLs zu erfassen.

Hier ist ein Beispielcode zum Scrapen von Zalando-Produktdetails mit Puppeteer:

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
61
62
63
64
const Puppenspieler = erfordern('Puppenspieler');

// Funktion zum Scrapen von Produktdetails aus einer einzelnen Produkt-URL
// Funktion zum Scrapen von Produktdetails aus einer einzelnen Produkt-URL
async Funktion Produktdetails abkratzen(Seite, Produkt-URL) {
– warten auf Sie! goto(ProduktURL, { Timeout: 0 });

// Klicken Sie auf den Abschnitt „Details“
const detailsButtonSelector = „div[data-testid="pdp-accordion-details"]-Schaltfläche“;
const GrößenButtonSelector = 'div[data-testid="pdp-accordion-size_fit"] Schaltfläche';

// Auf die Schaltfläche „Details“ warten und darauf klicken
– warten auf Sie! warteAufAuswahl(DetailsButtonSelector);
– warten auf Sie! klicken Sie auf(DetailsButtonSelector);

// Auf die Schaltfläche „Größen“ warten und darauf klicken
– warten auf Sie! warteAufAuswahl(GrößenButtonSelector);
– warten auf Sie! klicken Sie auf(GrößenButtonSelector);

// Produktdetails scrapen
const Produktdetails = – warten auf Sie! bewerten(() => {
const Titel = Dokument.querySelector(„span.EKabf7.R_QwOV“)?.innererText; // Produkttitel
const Markenname = Dokument.querySelector(„span.z2N-Fg.yOtBvf“)?.innererText; // Markenname
const Details = Betreff.vonEinträgen(
Feld.für(Dokument.querySelectorAll('div[data-testid="pdp-accordion-details"] div.qMOFyE')).Karte((Artikel) => [
Artikel.querySelector('dt')?.innererText.trimmen()
Artikel.querySelector('tt')?.innererText.trimmen()
]),
); // Produktdetails
const Preis = Dokument.querySelector(„span.dgII7d.Km7l2y“)?.innererText; // Preis
const Größen = Betreff.vonEinträgen(
Feld.für(Dokument.querySelectorAll('div[data-testid="pdp-accordion-size_fit"] div.qMOFyE')).Karte((Artikel) => [
Artikel.querySelector('dt')?.innererText.trimmen()
Artikel.querySelector('tt')?.innererText.trimmen()
]),
); // Verfügbare Größen
const Bild-URLs = Feld.für(Dokument.querySelectorAll(„ul.XLgdq7._0xLoFW li img“)).Karte((img) => Bildsrc); // Produktbilder-URL

Rückkehr { Titel, Markenname, Details, Preis, Größen, Bild-URLs };
});

Rückkehr { URL: Produkt-URL, ...Produktdetails };
}

(async () => {
const Browser = – warten auf Sie! Puppenspieler.starten();
const Seite = – warten auf Sie! Browser.neue Seite();

const Produkt-URLs = [
'https://de.zalando.de/anna-field-handtasche-schwarz-an651h0x2-q11.html',
'https://de.zalando.de/zign-handtasche-schwarz-zi151h08a-q11.html',
// Fügen Sie hier weitere Produkt-URLs hinzu
];

const alleProduktdetails = [];

für (const URL of Produkt-URLs) {
const Details = – warten auf Sie! Produktdetails abkratzen(Seite, URL);
alleProduktdetails.drücken(Einzelheiten);
}

trösten.Log(„Produktdetails erfolgreich gescrapt:“, alleProduktdetails);
– warten auf Sie! Browser.schließen();
}) ();

Code-Erklärung:

  • scrapeProductDetails Funktion: Diese Funktion navigiert zur Produkt-URL, wartet, bis der Inhalt geladen ist, und kratzt den Produkttitel, die Beschreibung, den Preis, die verfügbaren Größen und die Bild-URLs. Um auf den relevanten Inhalt zuzugreifen, wartet die Funktion zunächst, bis die Schaltflächen „Details“ und „Größen“ sichtbar werden. await page.waitForSelector(), und klickt sie dann mit await page.click(). Dadurch werden die jeweiligen Abschnitte erweitert, sodass deren Inhalt extrahiert werden kann.
  • Produkt-URLs-Array: Dieses Array enthält die Produktseiten-URLs, die Sie scrapen möchten.

Beispielausgabe:

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
Produkt Details abgekratzt erfolgreich: [
{
URL: 'https://de.zalando.de/anna-field-handtasche-schwarz-an651h0x2-q11.html',
Titel: 'Handtasche - schwarz',
Markenname: 'Anna Feld',
Details: { 'Befestigung:': 'Reißverschluss', 'Muster:': 'Schmucklos', 'Details:': 'Schnalle' },
Preis : '108,95 €',
Größen: {
'Höhe:': „28 cm (Größe Einheitsgröße)“,
'Länge:': „36 cm (Größe Einheitsgröße)“,
'Breite:': „12 cm (Größe Einheitsgröße)“
},
Bild-URLs: [
'https://img01.ztat.net/article/spp-media-p1/3359d0e0d8484d9ba930544c6c71a861/7859902ec50b4d88899541e3c1cf976b.jpg?imwidth=762',
'https://img01.ztat.net/article/spp-media-p1/4ce13463cf9a4dda9828bfc44f65bb6e/45133485dd0c4b03b1b122f0deeb0801.jpg?imwidth=762&filter=packshot',
'https://img01.ztat.net/article/spp-media-p1/4ce13463cf9a4dda9828bfc44f65bb6e/45133485dd0c4b03b1b122f0deeb0801.jpg?imwidth=156&filter=packshot',
.... mehr
]
},
{
URL: 'https://de.zalando.de/zign-handtasche-schwarz-zi151h08a-q11.html',
Titel: 'LEDER - Handtasche - schwarz',
Markenname: 'Zign',
Details: { 'Befestigung:': 'Reißverschluss', 'Muster:': 'Schmucklos' },
Preis : '51,99 €',
Größen: {
'Höhe:': „25 cm (Größe Einheitsgröße)“,
'Länge:': „36 cm (Größe Einheitsgröße)“,
'Breite:': „11 cm (Größe Einheitsgröße)“
},
Bild-URLs: [
'https://img01.ztat.net/article/spp-media-p1/a86e1fd894b33f8388ed33009cb6cfd2/62c903c4162141fa8c1452be53635f02.jpg?imwidth=762&filter=packshot',
'https://img01.ztat.net/article/spp-media-p1/cb7586f888fe39bc8e160d909a2403e3/194701c057bb4c6595849a0ffe13da24.jpg?imwidth=762',
'https://img01.ztat.net/article/spp-media-p1/a86e1fd894b33f8388ed33009cb6cfd2/62c903c4162141fa8c1452be53635f02.jpg?imwidth=156&filter=packshot',
.... mehr
]
}
]

Speichern von Daten in einer JSON-Datei

Nach dem Scrapen der Produktdetails empfiehlt es sich, die Daten in einer JSON-Datei zu speichern. So können Sie später leichter darauf zugreifen und sie analysieren. So speichern Sie die Scraped-Produktdetails in einer JSON-Datei.

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
const fs = erfordern('fs');

// Funktion scrapeProductDetails aus vorherigem Codeausschnitt kopieren

// Funktion zum Speichern der Scraped-Daten in einer JSON-Datei
Funktion saveDataToJson(Daten, Dateiname = 'zalando_product_details.json') {
fs.SchreibeFileSync(Dateiname, JSON.stringifizieren(Daten, null, 2));
trösten.Log(`Daten erfolgreich gespeichert in ${Dateiname}`);
}

(async () => {
const Browser = – warten auf Sie! Puppenspieler.starten();
const Seite = – warten auf Sie! Browser.neue Seite();

const Produkt-URLs = [
'https://de.zalando.de/anna-field-handtasche-schwarz-an651h0x2-q11.html',
'https://de.zalando.de/zign-handtasche-schwarz-zi151h08a-q11.html',
// Fügen Sie hier weitere Produkt-URLs hinzu
];

const alleProduktdetails = [];

für (const URL of Produkt-URLs) {
const Details = – warten auf Sie! Produktdetails abkratzen(Seite, URL);
alleProduktdetails.drücken(Einzelheiten);
}

// Ausgelesene Produktdetails in einer JSON-Datei speichern
saveDataToJson(alleProduktdetails);

– warten auf Sie! Browser.schließen();
}) ();

Code Erklärung:

  • saveDataToJson Funktion: Diese Funktion schreibt die extrahierten Produktdetails in eine JSON-Datei (zalando_product_details.json), formatiert für einfaches Lesen.
  • Datenspeicher: Nach dem Scraping der Details werden die Daten an die Funktion übergeben, um in einem strukturierten Format gespeichert zu werden.

Im nächsten Abschnitt sehen wir uns an, wie Sie Ihren Scraper mit Crawlbase optimieren können. Smart Proxy um ein Blockieren beim Schaben zu vermeiden.

Optimieren mit Crawlbase Smart Proxy

Beim Scraping bei Zalando kann es passieren, dass Sie blockiert oder gedrosselt werden. Um dies zu vermeiden, verwenden Sie einen Proxy-Dienst. Crawlbase Smart Proxy hilft Ihnen, sicher und schnell zu scrapen. So integrieren Sie es in Ihren Zalando-Scraper.

So verwenden Sie Crawlbase Smart Proxy mit Puppenspieler

Integration von Crawlbase Smart Proxy in Ihr Puppeteer-Skript ist unkompliziert. Sie benötigen Ihren Crawlbase-API-Schlüssel, um loszulegen.

So richten Sie es ein:

  1. Melden Sie sich bei Crawlbase an: Gehen Sie zur Crawlbase-Website und Konto erstellen. Nach der Anmeldung erhalten Sie ein API-Token.
  2. Aktualisieren Sie Ihr Puppeteer-Skript: Ändern Sie Ihren vorhandenen Scraper, um den Crawlbase-Proxy zu verwenden.

Hier ist eine aktualisierte Version Ihres Zalando-Produkt-Scrapers mit Crawlbase Smart Proxy:

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
const Puppenspieler = erfordern('Puppenspieler');

const ProxyURL = 'http://[E-Mail geschützt] : 8012 '; // Ersetzen _USER_TOKEN_ mit deinem Token

async Funktion Produktdetails abkratzen(Seite, Produkt-URL) {
– warten auf Sie! goto(ProduktURL, { Timeout: 0 });

// Produktdetails scrapen
const Produktdetails = – warten auf Sie! bewerten(() => {
const Titel = Dokument.querySelector('h1')?.innererText;
const Beschreibung = Dokument.querySelector('.Produktbeschreibung')?.innererText;
const Preis = Dokument.querySelector('.Preis')?.innererText;
const Größen = Feld.für(Dokument.querySelectorAll(„.Größenoptionen“)).Karte((Größe) => Größe.innererText);
const Bild-URL = Dokument.querySelector('img')?.src;

Rückkehr { Titel, Beschreibung, Preis, Größen, Bild-URL };
});

Rückkehr { URL: Produkt-URL, ...Produktdetails };
}

(async () => {
const Browser = – warten auf Sie! Puppenspieler.starten({
args: [`--proxy-server=${proxyUrl}`], // Crawlbase-Proxy verwenden
});
const Seite = – warten auf Sie! Browser.neue Seite();

const Produkt-URLs = [
'https://de.zalando.de/anna-field-handtasche-schwarz-an651h0x2-q11.html',
'https://de.zalando.de/zign-handtasche-schwarz-zi151h08a-q11.html',
// Fügen Sie hier weitere Produkt-URLs hinzu
];

const alleProduktdetails = [];

für (const URL of Produkt-URLs) {
const Details = – warten auf Sie! Produktdetails abkratzen(Seite, URL);
alleProduktdetails.drücken(Einzelheiten);
}

trösten.Log(„Produktdetails erfolgreich gescrapt:“, alleProduktdetails);
– warten auf Sie! Browser.schließen();
}) ();

Code Erklärung:

  • Proxy-Setup: Ersetzen _USER_TOKEN_ mit Ihrem tatsächlichen Crawlbase-Token. Dadurch wird Puppeteer angewiesen, den Crawlbase-Proxy für alle Anfragen zu verwenden.
  • Browser-Startoptionen: Das args Parameter in der puppeteer.launch() Methode gibt den zu verwendenden Proxyserver an. Auf diese Weise werden alle Ihre Anfragen über den Crawlbase-Proxy geleitet.

Optimieren Sie Ihren Zalando Scraper mit Crawlbase

Das Scraping von Zalando kann nützliche Informationen für Ihre Projekte liefern. In diesem Blog haben wir Ihnen gezeigt, wie Sie Ihre Node.js-Umgebung einrichten und Produktlisten und -details scrapen. Überprüfen Sie immer die Scraping-Regeln von Zalando, um innerhalb ihrer Grenzen zu bleiben.

Puppeteer mit Crawlbase verwenden Smart Proxy macht Ihr Scraping schneller und robuster. Das Speichern Ihrer Daten in JSON erleichtert die Verwaltung und Analyse. Denken Sie daran, dass sich Website-Layouts ändern können. Halten Sie Ihre Scraper daher auf dem neuesten Stand.

Wenn Sie sich für das Scraping von anderen E-Commerce-Plattformen interessieren, können Sie sich die folgenden umfassenden Anleitungen ansehen.

📜 Wie man Amazon scrapt
📜 Wie man Walmart scrapt
📜 So scrapen Sie AliExpress
📜 Wie man Flipkart scrapt
📜 Wie man Etsy scrapt

Bei Fragen oder Anregungen steht Ihnen unser Support-Team steht Ihnen jederzeit zur Verfügung, um Sie bei Ihrem Web Scraping-Vorhaben zu unterstützen. Viel Glück bei Ihrem Scraping-Vorhaben!

Häufig gestellte Fragen

Das Scraping von Daten von Zalando kann rechtliche Folgen haben. Lesen Sie unbedingt die Nutzungsbedingungen der Website, um zu erfahren, was dort zum Thema Datenscraping steht. Einige Websites erlauben das Scraping ausdrücklich nicht, während andere es unter bestimmten Bedingungen erlauben. Indem Sie die Regeln der Website befolgen, können Sie rechtliche Probleme vermeiden und ethisch handeln.

F: Welche Tools benötige ich zum Scrapen bei Zalando?

Um Zalando zu scrapen, benötigen Sie spezielle Tools, da die Website JavaScript-Rendering verwendet. Installieren Sie zunächst Node.js, mit dem Sie JavaScript-Code außerhalb eines Browsers ausführen können. Verwenden Sie dann Puppeteer, eine leistungsstarke Bibliothek, die einen Headless-Chrome-Browser steuert, sodass Sie mit JavaScript-gerenderten Inhalten interagieren können. Erwägen Sie auch die Verwendung Crawlbase Crawling API, das bei der IP-Rotation und dem Umgehen von Sperren helfen kann. Zusammen helfen Ihnen diese Tools, Daten aus den dynamischen Seiten von Zalando zu extrahieren.

F. Warum Crawlbase verwenden? Smart Proxy beim Scrapen von Zalando?

Crawlbase verwenden Smart Proxy Für Zalando ist Scraping aus mehreren Gründen gut. Es verhindert, dass Sie von der Website blockiert werden, und es rotiert IP-Adressen, um das normale Benutzerverhalten nachzuahmen. So wird Ihr Scraping effektiver und Sie können kontinuierlich und ohne Unterbrechungen Daten sammeln. Crawlbase Smart Proxy wird auch Ihr Scraping beschleunigen, sodass Sie Daten schneller und effizienter erfassen können.