~/ecommerce/woocommerce-scraper

WooCommerce-Scraper — Produkte, Preise, Bestand & Bewertungen

Liest Produkte, Varianten, Kategorien und Kundenbewertungen aus jedem WooCommerce-Shop. Eine Domain genügt, und der Actor findet den Katalog — auch wenn der Shop seine JSON-API abgeschaltet hat.

allgemein TypeScriptCheerio Weltweit
proooxy/woocommerce-scraper — Steckbrief
Kategorieecommerce / allgemein
SpracheTypeScript
StackTypeScript, Cheerio
MärkteWeltweit
Outputsauberes, RAG-fertiges JSON

Hauptfunktionen

Eine Domain reicht — der Actor findet den Katalog selbst

Funktioniert auch bei Shops, deren JSON-API deaktiviert oder per Firewall gesperrt ist

Jede Variante variabler Produkte, mit eigener SKU, eigenem Preis und Bestandsstatus

Kundenbewertungen als eigene Datensätze mit Wertung, Autor und Datum

Preise in kleinster Währungseinheit plus die Formatierung des Shops, damit Rechnen nie falsch rundet

Obergrenzen je Shop, damit ein großer Katalog die anderen in einem Mehr-Shop-Lauf nicht verdrängt

Stichwortsuche über jeden Shop des Laufs, nicht nur vollständige Katalogdurchläufe

Standardmäßig zurückhaltende Parallelität — die meisten WooCommerce-Shops sind kleine selbst gehostete WordPress-Seiten

Anwendungsfälle

  • Preis- und Sortimentsbeobachtung bei unabhängigen WooCommerce-Händlern
  • Produktdatenbank aus dem Long Tail kleiner Shops, die kein Marktplatz abdeckt
  • Wettbewerbsrecherche, wenn der Wettbewerber WordPress statt Shopify betreibt
  • Bewertungsanalyse für Produktstimmung und Notenverteilung
  • Produktdaten für Vergleichsportale, Marktplätze und Shopping-Agenten
  • Bestands- und Verfügbarkeitskontrolle für Distribution und Reseller-Prüfungen

Eingabeparameter

ParameterTypErforderlichBeschreibung
domainsarrayoptionalBloße Domains, eine pro Zeile — der einfachste Weg, den Actor auf einen Shop zu richten
startUrlsarrayoptionalBeliebige WooCommerce-URL: Shop-Startseite, Kategorie, Tag-Seite oder einzelnes Produkt
maxProductsintegeroptionalWie viele Produktdatensätze der gesamte Lauf speichern soll
maxProductsPerStoreintegeroptionalGrenze je Einzelshop, damit ein großer Katalog nicht das ganze Budget aufbraucht
includeVariationsbooleanoptionalAlle Varianten variabler Produkte holen, je mit SKU, Preis und Bestand
includeReviewsbooleanoptionalKundenbewertungen als eigene Datensätze mit Wertung, Autor und Datum speichern
querystringoptionalSuchbegriff für jede Shop-Startseite bzw. Domain des Laufs
allowHtmlFallbackbooleanoptionalHTML-Fallback für Shops erlauben, deren JSON-API deaktiviert oder gesperrt ist
proxyobjectoptionalProxy-Konfiguration; der Scraper eskaliert nur, wenn ein Shop es verlangt

Beispielausgabe

 1{
 2  "source": {
 3    "id": "1251",
 4    "canonicalUrl": "https://www.shoprootscience.com/shop/sample-kit",
 5    "retailer": "shoprootscience.com",
 6    "language": "en",
 7    "currency": "USD"
 8  },
 9  "title": "Sample Kit",
10  "brand": "",
11  "categories": ["Samples"],
12  "price": {
13    "current": 2000,
14    "currentFormatted": "$20.00",
15    "previous": 2000,
16    "stockStatus": "InStock",
17    "stockCount": 0
18  },
19  "stats": { "rating": 4.75, "reviewCount": 4 },
20  "options": [
21    { "type": "Sample 1", "values": [
22      { "id": "Bare Facial Serum", "name": "Bare Facial Serum" },
23      { "id": "Youth Facial Serum", "name": "Youth Facial Serum" }
24    ] }
25  ],
26  "variants": [
27    { "sku": "SK-BARE", "price": { "current": 2000, "currentFormatted": "$20.00", "stockStatus": "InStock" } }
28  ]
29}

Tipps

Mit einer Domain und kleiner Obergrenze starten. Hundert Produkte zeigen, welche Datenquelle der Shop offenlegt und wie vollständig die Datensätze sind. Bei mehreren Shops maxProductsPerStore setzen. Sonst schluckt der erste große Katalog das Budget, bevor die anderen Shops drankommen. Bewertungen bewusst einschalten. Sie sind eigene Datensätze und eigene Kosten; für Preisbeobachtung braucht man sie selten. HTML-Fallback aktiviert lassen. Er ist der Grund, warum abgeriegelte Shops überhaupt funktionieren; die Obergrenze pro Lauf begrenzt die Kosten.

FAQ

Was, wenn die JSON-API des Shops abgeschaltet ist?
Genau dafür ist dieser Actor gebaut. Er erkennt die Lage und liest den Katalog trotzdem, sodass auch ein abgeschotteter Shop Produkte liefert.
Woher weiß ich, ob eine Seite wirklich WooCommerce ist?
Geben Sie die Domain an und lassen Sie den Actor entscheiden — die Erkennung ist Teil des Laufs.
Sind Varianten eigene Datensätze?
Nein. Ein Datensatz ist ein Produkt, die Varianten liegen verschachtelt in variants und tragen jeweils eigene SKU, Preis und Bestandsstatus. Nur Bewertungen sind — wenn aktiviert — eigene Datensätze.

verwandt in ~/ecommerce

WooCommerce-Scraper — Produkte, Preise, Bestand & Bewertungen ausführen oder ein individuelles Projekt anfragen

In wenigen Minuten mit der Extraktion auf Apify starten, oder mich für einen maßgeschneiderten Scraper und eine RAG-Pipeline exakt nach Quelle und Schema beauftragen.

auf Apify ausführen individuelle Daten anfragen