Alibaba.com ist einer der größten B2B-Marktplätze der Welt, mit Produkten in mehr als 40 Kategorien von Lieferanten aus Dutzenden von Ländern. Für alle, die Beschaffung, Preisrecherche oder Wettbewerbsanalyse betreiben, sind die öffentlichen Suchergebnisse ein dichtes Signal: Jede Anfrage liefert Produkttitel, Preisspannen, Mindestbestellmengen, Lieferantennamen und die Links, die sie zusammenhalten. Das Einfließen dieser Daten in einen strukturierten Datensatz verwandelt ein manuelles Durchsuchen in etwas, das sich sortieren, vergleichen und im Laufe der Zeit verfolgen lässt.

Diese Anleitung zeigt Ihnen, wie Sie Alibaba-Suchergebnisse scrapen mit Node.js auf zuverlässige Weise. Sie entwickeln einen kleinen, lauffähigen Scraper, der eine gerenderte SERP über die Crawling API abruft, jede Produktkarte mit Cheerio parst, die Paginierung verarbeitet und saubere JSON- und CSV-Dateien exportiert. Die gesamte Anleitung beschränkt sich auf öffentliche Suchergebnisdaten, die jeder ohne Konto sehen kann. Der Abschnitt zur Rechtslage am Ende ist kein Boilerplate, lesen Sie ihn, bevor Sie den Scraper auf größere Datenmengen ansetzen.

Was Sie entwickeln werden

Ein Node.js-Skript, das eine öffentliche Alibaba-Such-URL entgegennimmt, das HTML über die Crawling API abruft und einen strukturierten Datensatz für jede Produktkarte auf der Seite extrahiert. Als laufendes Beispiel verwenden wir eine Musterabfrage und lesen folgende Felder aus jedem Ergebnis:

  • Titel die Produktüberschrift, wie sie in der Angebotskarte angezeigt wird.
  • Preis der angezeigte Preis oder die Preisspanne für das Produkt.
  • Mindestbestellung die Mindestbestellmenge oder der Verkaufshinweis-Text des Lieferanten.
  • Lieferant der Name des Shops oder Unternehmens hinter dem Angebot.
  • Link die Ziel-URL der Produktdetailseite.
  • Shop-Link die URL des Unternehmensprofils des Lieferanten.

Warum eine einfache Anfrage bei Alibaba scheitert

Wenn Sie eine HTTP-Anfrage an eine Alibaba-Such-URL aus einem Skript senden, erhalten Sie selten die saubere Seite, die Sie in Ihrem eigenen Browser sehen. Zwei Faktoren arbeiten gegen Sie. Erstens wird ein Großteil der SERP durch JavaScript nach dem initialen HTML-Laden zusammengestellt, sodass ein roher Abruf eine Hülle mit fehlenden Produktkarten zurückgeben kann. Zweitens beobachtet Alibaba automatisierten Datenverkehr: Anfragen, die nicht wie ein echter Browser aussehen, werden herausgefordert, mit einem CAPTCHA konfrontiert oder blockiert, bevor sie die Angebote erreichen.

Ein funktionierender Alibaba-Scraper benötigt also zwei Dinge in einer Anfrage: eine IP, die die Plattform als echten Besucher liest, und einen Browser, der die Seite rendert, wenn er auf Scripts angewiesen ist. Das lässt sich zwar selbst mit einem Headless-Browser und einem Pool rotierender Residential-Proxies zusammenstellen, aber deren Aufrechterhaltung ist der Großteil der Arbeit. Die Crawling API fasst beides in einem einzigen Aufruf zusammen: Sie senden ihr die URL, sie ruft von einer vertrauenswürdigen IP ab, rendert bei Bedarf und gibt fertiges HTML zurück, das Sie mit einer leichtgewichtigen Bibliothek wie Cheerio parsen können.

Warum Rotation hier wichtig ist

Alibaba gehört zu den aggressiver geschützten Marktplätzen. Eine einzelne Rechenzentrum-IP, die wiederholte SERP-Anfragen stellt, ist ein sofortiges Erkennungszeichen. Die Crawling API rotiert serverseitig durch Rechenzentrum- und Residential-Adressen und verarbeitet CAPTCHAs für Sie, sodass Sie diesen Pool nicht selbst beschaffen und pflegen müssen. Sie können mit bis zu 5.000 kostenlosen Anfragen beginnen, ohne Kreditkarte.

Voraussetzungen

Bevor Sie mit dem Programmieren beginnen, müssen einige Dinge vorbereitet sein. Keines davon nimmt viel Zeit in Anspruch.

Node.js-Grundkenntnisse. Sie sollten mit dem Schreiben und Ausführen von Node-Skripten sowie der Installation von Paketen mit npm vertraut sein. Wenn Sie neu beim Scrapen in diesem Stack sind, erläutert unsere Anleitung zum Erstellen eines Web-Scrapers mit Node.js die Grundlagen, die dieses Tutorial voraussetzt.

Node.js 14 oder höher. Überprüfen Sie Ihre Version mit node -v. Falls Sie es noch nicht installiert haben, laden Sie es von nodejs.org herunter.

Ein Crawlbase-Konto und Token. Melden Sie sich an, öffnen Sie Ihr Dashboard und kopieren Sie Ihr Anfrage-Token von der Kontodokumentationsseite. Sie erhalten bis zu 5.000 kostenlose Anfragen. Behandeln Sie das Token wie ein Passwort: Es authentifiziert Ihre Anfragen, halten Sie es also aus der Versionskontrolle fern.

Projekt einrichten

Erstellen Sie ein Projektverzeichnis und installieren Sie die beiden Bibliotheken, die der Scraper benötigt.

bash
mkdir alibaba-serp-scraper
cd alibaba-serp-scraper

npm init -y
npm install crawlbase cheerio

Zwei Abhängigkeiten erledigen die Arbeit: crawlbase ist der offizielle Client, der die Anfrage an die Crawling API sendet, und cheerio ist ein schneller, jQuery-ähnlicher HTML-Parser, mit dem Sie einzelne Felder per CSS-Selector extrahieren können. Erstellen Sie eine Datei namens index.js in diesem Verzeichnis; dort befindet sich der Scraper-Code.

Schritt 1: Die Seite über die Crawling API abrufen

Beginnen Sie mit dem Abruf des HTML. Initialisieren Sie den Crawling API-Client mit Ihrem Token, richten Sie ihn auf eine öffentliche Alibaba-Such-URL aus und bestätigen Sie, dass die Seite zurückkommt, bevor Sie einen einzigen Selector schreiben. Der CrawlingAPI-Client gibt eine Antwort zurück, deren body das gerenderte HTML enthält.

javascript
const { CrawlingAPI } = require('crawlbase');

// Replace with your token from the Crawlbase dashboard
const api = new CrawlingAPI({ token: 'YOUR_CRAWLBASE_TOKEN' });

const alibabaSerpURL =
  'https://www.alibaba.com/trade/search?SearchText=samsung+s24+ultra';

api
  .get(alibabaSerpURL)
  .then((response) => {
    // original_status is the status Alibaba itself returned
    console.log('Status:', response.originalStatus);
    console.log(response.body.slice(0, 500));
  })
  .catch((error) => {
    console.error('Request failed:', error);
  });

Die Musterabfrage ist samsung+s24+ultra, übergeben im Parameter SearchText, so leitet Alibabas Trade-Suche einen Suchbegriff weiter. Führen Sie das Skript mit node index.js aus, und Sie sollten einen 200er-Status und echtes Produkt-Markup in den ersten 500 Zeichen sehen. Das bestätigt, dass der Abruf funktioniert, mit gerenderter Seite und akzeptierter Anfrage, bevor Sie sich auf Parsing-Logik festlegen. Die Überprüfung von originalStatus sorgt dafür, dass ein Regions-Gate oder eine Blockierung laut ausfällt, anstatt stillschweigend eine Fehlerseite in den Parser einzuspeisen.

Crawlbase Crawling API

Dieser 200er-Status kommt nur zurück, weil die Anfrage Alibaba zunächst als echter Besucher erreicht hat. Die Crawling API ruft die SERP von einer rotierenden IP ab, rendert die JavaScript-basierten Produktkarten und löst CAPTCHAs serverseitig auf, dann übergibt sie Ihnen fertiges HTML. So entfällt das Betreiben einer Headless-Browser-Flotte und die Beschaffung eines Residential-Proxy-Pools. Probieren Sie es zunächst mit einer öffentlichen Such-URL im kostenlosen Tarif aus.

Schritt 2: Produktkarten mit Cheerio parsen

Mit dem HTML laden Sie es in Cheerio und extrahieren jedes Produkt anhand seines Selectors. Alibaba umschließt jedes Angebot in einer Karte unter dem Angebotslisten-Container, mit Titel, Preis, Mindestbestellung und Lieferant jeweils in einem eigenen Element innerhalb der Karte. Untersuchen Sie die Live-Seite in den Entwicklertools Ihres Browsers (Rechtsklick, dann Untersuchen), um die aktuellen Klassennamen zu bestätigen; die unten aufgeführten Selectors entsprechen dem Layout zum Zeitpunkt der Erstellung.

javascript
const cheerio = require('cheerio');

// Alibaba serves protocol-relative URLs (//...); normalise them to https
function toHttps(href) {
  if (!href) return null;
  return href.includes('http') ? href : `https:${href}`;
}

function parseSerp(html) {
  const $ = cheerio.load(html);
  const results = [];

  const numberOfResults = $('.seb-refine-result_all').text().trim();

  $('.offer-list-wrapper .J-search-card-wrapper').each((index, element) => {
    const card = $(element);

    const title = card.find("[data-spm='d_title']").text().trim();
    const url = card.find("[data-spm='d_title']").attr('href');
    const price = card.find('.search-card-e-price-main').text().trim();
    const minItem = card.find('.search-card-m-sale-features__item').text().trim();
    const storeName = card.find('.search-card-e-company').text().trim();
    const storeLink = card.find('.search-card-e-company').attr('href');
    const image = card.find('.search-card-e-slider__img').attr('src');
    const reviews = card.find('.search-card-e-review').text().trim();

    if (!title) return;

    results.push({
      position: index + 1,
      title,
      price,
      minItem,
      storeName,
      reviews,
      url: toHttps(url),
      storeLink: toHttps(storeLink),
      image: toHttps(image),
    });
  });

  return { numberOfResults, results };
}

module.exports = { parseSerp };

Der Wrapper .offer-list-wrapper .J-search-card-wrapper wählt jede Produktkarte aus. Innerhalb jeder Karte kommen der Titel und seine Produkt-URL aus dem [data-spm='d_title']-Anker, der Preis aus .search-card-e-price-main, der Mindestbestellungstext aus .search-card-m-sale-features__item und der Lieferantenname sowie der Profillink aus .search-card-e-company. Alibaba gibt viele seiner Links protokollrelativ zurück (beginnend mit //), daher stellt der kleine Helper toHttps https: voran, wenn der Wert noch nicht absolut ist. Die Prüfung if (!title) return; überspringt leere oder Nicht-Produkt-Karten, damit Werbetiles die Ausgabe nicht verunreinigen. Das Element .seb-refine-result_all enthält die Gesamtergebniszahl, die oben auf der Seite angezeigt wird.

Selectors driften

Alibabas Klassennamen wie J-search-card-wrapper und search-card-e-price-main ändern sich, wenn das Frontend neu deployt wird. Behandeln Sie die obigen Selectors als Startvorlage, nicht als Vertrag. Wenn ein Feld für jede Karte leer zurückkommt, untersuchen Sie eine Live-Seite in den Entwicklertools Ihres Browsers und aktualisieren Sie den Selector. Periodische Selector-Pflege ist bei jedem Produktions-Scraper normal, kein Zeichen dafür, dass etwas kaputt ist.

Schritt 3: Alles zusammensetzen und exportieren

Verbinden Sie jetzt den Abruf und das Parsen zu einem lauffähigen Skript. Crawlen Sie die gerenderte SERP, übergeben Sie das HTML an den Parser und schreiben Sie dann die strukturierte Ausgabe sowohl als JSON als auch als CSV, damit die Daten für eine Tabellenkalkulation oder eine Datenbank bereit sind.

javascript
const { CrawlingAPI } = require('crawlbase');
const cheerio = require('cheerio');
const fs = require('fs');

const api = new CrawlingAPI({ token: 'YOUR_CRAWLBASE_TOKEN' });

function toHttps(href) {
  if (!href) return null;
  return href.includes('http') ? href : `https:${href}`;
}

function parseSerp(html) {
  const $ = cheerio.load(html);
  const results = [];
  const numberOfResults = $('.seb-refine-result_all').text().trim();

  $('.offer-list-wrapper .J-search-card-wrapper').each((index, element) => {
    const card = $(element);
    const title = card.find("[data-spm='d_title']").text().trim();
    if (!title) return;

    results.push({
      position: index + 1,
      title,
      price: card.find('.search-card-e-price-main').text().trim(),
      minItem: card.find('.search-card-m-sale-features__item').text().trim(),
      storeName: card.find('.search-card-e-company').text().trim(),
      reviews: card.find('.search-card-e-review').text().trim(),
      url: toHttps(card.find("[data-spm='d_title']").attr('href')),
      storeLink: toHttps(card.find('.search-card-e-company').attr('href')),
      image: toHttps(card.find('.search-card-e-slider__img').attr('src')),
    });
  });

  return { numberOfResults, results };
}

function toCsv(results) {
  const headers = ['position', 'title', 'price', 'minItem', 'storeName', 'url'];
  const escape = (v) => `"${(v || '').toString().replace(/"/g, '""')}"`;
  const rows = results.map((r) =>
    headers.map((h) => escape(r[h])).join(',')
  );
  return [headers.join(','), ...rows].join('\n');
}

async function main() {
  const url =
    'https://www.alibaba.com/trade/search?SearchText=samsung+s24+ultra';
  const response = await api.get(url);

  if (response.originalStatus !== 200) {
    throw new Error(`Unable to crawl, status ${response.originalStatus}`);
  }

  const data = parseSerp(response.body);
  fs.writeFileSync('alibaba-serp.json', JSON.stringify(data, null, 2));
  fs.writeFileSync('alibaba-serp.csv', toCsv(data.results));
  console.log(`Saved ${data.results.length} products`);
}

main().catch((error) => console.error(error));

Führen Sie das vollständige Skript mit node index.js aus. Es ruft die SERP für „samsung s24 ultra" ab, extrahiert einen Datensatz für jede Produktkarte und schreibt alles in alibaba-serp.json und alibaba-serp.csv. Das JSON behält die verschachtelte Struktur mit der Ergebnisanzahl, während das CSV die Kernbeschaffungsfelder in Zeilen glättet, die Sie direkt in eine Tabellenkalkulation einfügen können. Tauschen Sie die Abfrage in der URL aus und dieselben zwei Funktionen verarbeiten alles, was zurückkommt.

Wie die Ausgabe aussieht

Sie erhalten ein sauberes Objekt mit der Gesamtergebnisanzahl und einer geordneten Produktliste, die jeweils Titel, Preis, Mindestbestellung, Lieferant, Links und Bild enthält.

json
{
  "numberOfResults": "3,000+ products found",
  "results": [
    {
      "position": 1,
      "title": "Mobile Phone Case For Samsung Galaxy S24 Ultra Plus Tpu Pc Shockproof Covers",
      "price": "US$1.29 - US$1.69",
      "minItem": "Min. order: 50 pieces",
      "storeName": "Guangzhou Junbo Electronic Co., Ltd.",
      "reviews": "4.9/5.0 (68)",
      "url": "https://www.alibaba.com/product-detail/Mobile-Phone-Case_1600969904884.html",
      "storeLink": "https://gzjunbo.en.alibaba.com/company_profile.html",
      "image": "https://s.alicdn.com/@sc04/kf/Hcdcc7db446e9420f9378c0ec3482037bk.png_300x300.png"
    },
    {
      "position": 2,
      "title": "Cellphone Original S24 Ultra 16GB+512GB Smartphone 7inch Unlocked 5G",
      "price": "US$43.42 - US$54.47",
      "minItem": "Min. order: 1 piece",
      "storeName": "Dongguan Zhongfu Electronic Technology Co., Ltd.",
      "reviews": "3.3/5.0 (197)",
      "url": "https://www.alibaba.com/product-detail/Hot-selling-S24-Ultra_1600969407142.html",
      "storeLink": "https://fukadi.en.alibaba.com/company_profile.html",
      "image": "https://s.alicdn.com/@sc04/kf/H771126c0475c4a3d9ee7842740b0cf4an.jpg_300x300.jpg"
    }
  ]
}

Diese Struktur ist es, die Alibaba-Daten für die B2B-Arbeit nützlich macht: Preisspannen und Mindestbestellmengen fließen in Beschaffungsvergleiche ein, Lieferantennamen und Shop-Links ermöglichen die Vorauswahl von Anbietern, und die Bewertungsstrings liefern ein grobes Qualitätssignal pro Angebot. Weitere Informationen zur Umwandlung von Marktplatzdaten in Preisentscheidungen finden Sie in unserer Anleitung zum Web Scraping für Preisintelligenz.

Skalierung über Seiten und Abfragen hinweg

Eine Abfrage auf einer Seite ist eine Demo; ein echter Beschaffungsauftrag läuft über mehrere Suchen und tiefer in die Ergebnisse. Alibabas Trade-Suche paginiert mit dem Abfrageparameter page, also ist page=2 die zweite Seite, page=3 die dritte und so weiter. Die Struktur bleibt dieselbe: Erstellen Sie jede URL, rufen Sie sie über die Crawling API ab und parsen Sie sie mit derselben Funktion. Die eine Gewohnheit, die einen langen Lauf gesund hält, ist Dosierung: Machen Sie also zwischen Anfragen Pausen, anstatt sie in einer engen Schleife abzufeuern.

javascript
const sleep = (ms) => new Promise((r) => setTimeout(r, ms));

async function scrapeQuery(searchText, pages = 3) {
  const encoded = encodeURIComponent(searchText).replace(/%20/g, '+');
  const allResults = [];

  for (let page = 1; page <= pages; page++) {
    const url =
      `https://www.alibaba.com/trade/search?SearchText=${encoded}&page=${page}`;
    const response = await api.get(url);
    if (response.originalStatus === 200) {
      allResults.push(...parseSerp(response.body).results);
    }
    await sleep(3000);
  }

  console.log(`Collected ${allResults.length} products across ${pages} pages`);
  return allResults;
}

Crawlbase verarbeitet standardmäßig bis zu 20 Anfragen pro Sekunde, was ausreichend Spielraum für einen Scraper lässt, der sich selbst dosiert; wenn Sie wirklich mehr benötigen, kann der Support den Wert erhöhen. Jede 5XX-Antwort der API ist kostenlos, sodass das Wiederholen einer blockierten oder nicht verfügbaren URL Sie nichts kostet. Wenn Sie Ihren eigenen Datenverkehr lieber durch einen rotierenden Pool leiten möchten statt die verwaltete API zu nutzen, bietet der Smart AI Proxy dieselbe IP-Rotation als Drop-in-Proxy-Endpunkt. Für das breitere Marktplatz-Vorgehen deckt unsere Anleitung zum E-Commerce-Web-Scraping die Muster ab, die seitenübergreifend gelten.

Nicht geblockt bleiben

Auch mit einer vertrauenswürdigen IP beobachtet Alibaba scraper-ähnlichen Datenverkehr, und seine Marktplatzseiten rendern intensiv, daher halten ein paar Gewohnheiten einen Lauf gesund.

  • Anfragen dosieren. Suchseiten in einer engen Schleife abzufragen ist der schnellste Weg zur Herausforderung. Verteilen Sie Anfragen und variieren Sie Ihre Abfragen, anstatt einen Begriff mit voller Geschwindigkeit zu durchblättern.
  • Auf Rotation setzen. Ein Pool rotierender IPs verteilt Anfragen auf viele Adressen, sodass keine einzelne ein Limit auslöst. Die Crawling API erledigt das für Sie; wenn Sie Ihren eigenen Stack aufbauen, ist dies der Teil, den Sie richtig machen müssen.
  • Rendern, wenn Karten fehlen. Wenn die Produktkarten leer zurückkommen, brauchte die Seite JavaScript, um sie aufzubauen. Aktivieren Sie die Rendering-Option der Crawling API, damit die SERP so abgerufen wird, wie ein echter Browser sie laden würde. Unsere Anleitung zum Crawlen von JavaScript-Websites erklärt, wann das wichtig ist.
  • Neu untersuchen, wenn Felder leer werden. Alibaba ändert sein Markup regelmäßig. Wenn Karten nicht mehr geparst werden, öffnen Sie eine Live-Seite in den Entwicklertools und aktualisieren Sie die Selectors.

Für das breitere Vorgehen lesen Sie, wie man Websites scrapt, ohne blockiert zu werden.

Ob das Scrapen von Alibaba erlaubt ist, hängt von Alibabas Nutzungsbedingungen, Ihrer Rechtsordnung und dem ab, was Sie mit den Daten machen. Alibabas Bedingungen schränken den automatisierten Zugriff ein, sodass Scraping unabhängig von der Sorgfalt Ihrer Werkzeuge gegen diese Bedingungen verstoßen kann. Keiner der hier aufgeführten Codes ändert daran etwas; er macht nur den technischen Teil möglich. Lesen Sie Alibabas Bedingungen und seine robots.txt und behandeln Sie beides als Grenze dessen, was Sie sammeln dürfen.

Ein paar Grundsätze, an denen es sich lohnt festzuhalten. Sammeln Sie nur öffentliche Suchergebnisdaten: die Produkttitel, Preise, Mindestbestellmengen, Lieferantennamen und Links, die jeder auf einer SERP ohne Konto sehen kann. Halten Sie Ihr Anfragevolumen niedrig genug, dass Sie Alibabas Server nicht belasten, und dosieren Sie Ihren Crawl, anstatt ihn auf Hochtouren laufen zu lassen. Scrapen Sie keine Kontaktdaten von Käufern oder Lieferanten, keine Nachrichten oder irgendetwas hinter einem Login, und verbreiten Sie keine Produktbilder oder -beschreibungen so, als wären sie Ihre eigenen.

Diese Anleitung beschränkt sich bewusst auf öffentliche Suchergebnisseiten, da das die Linie ist, die die Arbeit vertretbar macht. Alibaba betreibt eine offene Plattform mit offiziellen APIs für Partner, die sanktionierten, höhervolumigen Zugriff auf Produkt- und Lieferantendaten benötigen, und das ist der richtige Weg, wenn ein Projekt über das Scrapen öffentlicher Seiten hinauswächst. Für alles, was personenbezogene Daten, durch Konto gesperrte Inhalte oder urheberrechtlich geschützte Medien betrifft, die Sie weiterveröffentlichen möchten, ist eine offizielle Datenvereinbarung der richtige Weg, kein ausgefeilterer Scraper.

Zusammenfassung

Wichtigste Erkenntnisse

  • Einfache Anfragen reichen nicht aus. Alibaba baut seine SERP mit JavaScript auf und fordert bot-ähnlichen Datenverkehr heraus, daher benötigen Sie Rendering plus eine vertrauenswürdige, rotierende IP, um die echten Produktkarten zu erhalten.
  • Die Crawling API ruft hinter einer echten IP ab. Senden Sie ihr die URL, sie rotiert IPs serverseitig, rendert die Karten und löst CAPTCHAs auf, dann gibt sie Ihnen fertiges HTML zum Parsen zurück.
  • Cheerio übernimmt die Extraktion. Wählen Sie jedes .J-search-card-wrapper aus, lesen Sie dann Titel, Preis, Mindestbestellung, Lieferant und Links daraus, und rechnen Sie damit, dass die Klassennamen driften.
  • Mit dem Page-Parameter paginieren und beide Formate exportieren. Erhöhen Sie page, um tiefer zu gehen, dosieren Sie mit einem Sleep und schreiben Sie JSON für Struktur und CSV für Tabellenkalkulationen.
  • Bleiben Sie bei öffentlichen Daten. Respektieren Sie Alibabas AGB und robots.txt, halten Sie das Volumen niedrig, berühren Sie niemals Kontakt- oder Kontodaten und nutzen Sie die offizielle Open Platform API, wenn Sie über das Scrapen öffentlicher Seiten hinauswachsen.

Häufig gestellte Fragen

Warum schlägt eine einfache Anfrage fehl oder gibt eine leere Seite bei Alibaba zurück?

Alibaba assembliert einen Großteil seiner Suchergebnisseite mit JavaScript nach dem initialen HTML-Laden, sodass ein roher Abruf eine Hülle mit fehlenden Produktkarten zurückgeben kann. Außerdem markiert es Datenverkehr, der nicht wie ein echter Browser aussieht, und kann ein CAPTCHA bereitstellen oder blockieren. Das Abrufen über die Crawling API, die die Seite rendert und rotierende IPs verwendet, lässt die Anfrage wie ein gewöhnlicher Besucher aussehen, sodass Sie die echten Produktangebote erhalten.

Kann ich Alibaba-Suchergebnisse mit Node.js scrapen?

Ja. Mit dem Crawlbase-Client und Cheerio können Sie eine SERP abrufen und Titel, Preise, Mindestbestellmengen, Lieferanten und Links extrahieren. Die Crawling API fungiert als Brücke, die Ihre Anfrage von einer vertrauenswürdigen IP zu Alibaba bringt und die Seite rendert, sodass Anfragen reibungslos verarbeitet werden statt blockiert zu werden. Für eine breitere Einführung lesen Sie unsere Anleitung zum Erstellen eines Web-Scrapers mit Node.js.

Welche Felder kann ich aus einer Alibaba-SERP extrahieren?

Dieses Tutorial extrahiert den Produkttitel, Preis, die Mindestbestellmenge, den Lieferantennamen, den Produktlink, den Shop-Link, das Bild und den Bewertungsstring aus jeder Karte sowie die Gesamtergebnisanzahl für die Abfrage. Bleiben Sie bei öffentlichen Suchergebnisdaten und vermeiden Sie alles hinter einem Login, einschließlich Kontaktdaten von Lieferanten und durch Konto gesperrte Inhalte.

Benötige ich JavaScript-Rendering, um Alibaba zu scrapen?

Oft ja, da die Produktkarten von Scripts nach dem Seitenladen aufgebaut werden. Wenn ein einfacher Abruf eine leere Angebotsliste zurückgibt, aktivieren Sie die JavaScript-Rendering-Option der Crawling API, damit die Seite so abgerufen wird, wie ein echter Browser sie laden würde. Unsere Anleitung zum Crawlen von JavaScript-Websites erklärt, wann das notwendig ist.

Wie paginiere ich durch mehr Alibaba-Ergebnisse?

Verwenden Sie den Abfrageparameter page: page=2 ist die zweite Seite, page=3 die dritte und so weiter. Erstellen Sie jede Seiten-URL, rufen Sie sie über die Crawling API ab, parsen Sie sie mit derselben Funktion und machen Sie zwischen Anfragen einige Sekunden Pause, damit Sie den Crawl dosieren statt ihn zu hammern.

Meine Selectors geben nichts zurück. Was hat sich geändert?

Mit ziemlicher Sicherheit Alibabas Markup. Klassennamen wie J-search-card-wrapper und search-card-e-price-main ändern sich, wenn Alibaba sein Frontend neu deployt, sodass Selectors, die letzten Monat funktionierten, jetzt brechen können. Untersuchen Sie eine Live-SERP in den Entwicklertools Ihres Browsers und aktualisieren Sie die Selectors. Periodische Selector-Pflege ist bei jedem Produktions-Scraper normal.

Jetzt loslegen

Crawlen Sie jede Website im großen Maßstab, ohne gegen die Infrastruktur zu kämpfen.

Crawlbase übernimmt Proxys, Fingerprints und CAPTCHAs, damit Ihr Team Datenpipelines ausliefert, statt Crawl-Infrastruktur zu pflegen. 1.000 Anfragen kostenlos, keine Karte erforderlich.

Self-Service · Kein Verkaufsgespräch erforderlich · Enterprise-Crawl-Volumen verfügbar