So extrahieren Sie Produktdaten aus URLs

· 7 Min. Lesezeit

Das Kopieren eines Preises, einer Artikelnummer und von drei Fotos von einer Lieferantenseite in eine Tabellenkalkulation dauert ein paar Minuten. Machen Sie das für 150 Artikel in einem Wohnprojekt, und ein Arbeitstag ist vorbei, mit Tippfehlern als Bonus. Diese Anleitung zeigt, wie Sie Produktdaten zuverlässig aus URLs extrahieren: Prüfen Sie zuerst auf strukturierte Daten, extrahieren Sie die benötigten Felder, greifen Sie auf Layout-Parsing zurück, wenn die Auszeichnung fehlt, und bereinigen Sie das Ergebnis, damit es direkt in eine Schätzung einfließt.

Was Sie vor Schritt 1 benötigen:

  • Eine Liste von Lieferanten-Produkt-URLs (eine pro Produkt, keine Kategorieseiten)
  • Ein Browser mit Entwicklertools oder eine Python-Umgebung, wenn Sie ein Skript erstellen möchten
  • Ein Zielformat für Ihre Daten: Name, Artikelnummer, Preis, Währung, Bilder, Abmessungen
  • Eine Regel für Ihre Basiswährung, damit Preise verglichen werden können

Warum das Parsen von Produkt-URLs die manuelle Eingabe übertrifft

Die manuelle Eingabe scheitert auf drei vorhersehbare Arten. Sie ist langsam. Sie führt zu Fehlern, wie einer vertauschten Ziffer in einer Artikelnummer oder einem Preis, der mit dem falschen Währungssymbol kopiert wurde. Und sie veraltet in dem Moment, in dem Sie fertig sind, weil niemand die Lieferantenseite auf halbem Weg der Beschaffung erneut überprüft.

Das Erlernen des Parsens von Produktdaten aus URLs verwandelt jeden einzelnen in einen konsistenten Datensatz. Tutorials von Oxylabs und Zyte zeigen das allgemeine Muster: Fordern Sie die Seite an, lokalisieren Sie die Felder, speichern Sie sie in einem strukturierten Format. Die gleiche Logik gilt für Interior-Produkte, egal ob Sie das Skript selbst schreiben oder ein Tool verwenden, das es für Sie erledigt.

Für einen Designer ist der Lohn nicht Eleganz. Es ist Konsistenz. Wenn jedes Produkt mit denselben Feldern ankommt, können Sie nach Preis sortieren, nach Raum gruppieren und die eine Lampe auffangen, die in Dollar bepreist ist, während vierzig in Euro bepreist sind. Das ist der Unterschied zwischen einer Einkaufsliste und einem Arbeitskalkül.

Schritt 1: Prüfen Sie, ob die Lieferantenseite JSON-LD Produktdaten enthält

Bevor Sie einen Selektor schreiben oder ein neues Werkzeug lernen, finden Sie heraus, ob die Seite Ihnen bereits saubere Daten liefert. Viele Lieferantenseiten betten strukturierte Daten in ein Skript-Tag mit dem Typ application/ld+jsonein. Es befindet sich getrennt vom sichtbaren Layout und existiert, damit Suchmaschinen und andere Systeme das Produkt konsistent lesen können.

Um dies zu überprüfen, öffnen Sie die Produktseite, zeigen Sie den Seitenquelltext an und suchen Sie nach ld+json. Wenn Sie einen Block finden, lesen Sie ihn. Sie suchen nach einem Product Typ, normalerweise mit einem verschachtelten Offer der den Preis enthält. Ein kostenloser JSON-LD Extractor und Schema Checker kann diese Blöcke für Sie extrahieren und anzeigen, was vorhanden ist, was hilfreich ist, wenn der Seitenquelltext eine Wand aus minifiziertem Code ist.

Zwei Vorsichtsmaßnahmen. Nicht jede Website veröffentlicht strukturierte Daten, und Tools, die sich darauf verlassen, geben für Seiten ohne Markup nichts zurück. Und eine Seite kann mehrere Schematypen gleichzeitig enthalten (Breadcrumbs, Organisation, Produkt), stellen Sie also sicher, dass Sie den Product Block lesen und nicht etwas daneben.

Führen Sie diese Prüfung für ein Produkt von jedem Lieferanten durch, nicht für jede URL. Lieferanten verwenden normalerweise eine Vorlage für den gesamten Katalog, sodass ein einzelnes Ergebnis Ihnen sagt, wie sich der Rest verhalten wird.

Schritt 2: Name, SKU, Preis und Bilder aus strukturierten Daten extrahieren

Wenn das JSON-LD vorhanden ist, ist die Extraktion einfach, da die Felder beschriftet sind. Ein Tool wie „ ein E-Commerce-Schema-Extraktor “ liest Name, Preis, Währung, Verfügbarkeit, Marke, SKU, GTIN, Bewertung und Bilder aus schema.org JSON-LD, Microdata und OpenGraph, was die meisten Anforderungen eines Designers abdeckt.

Wenn Sie lieber selbst ein Skript schreiben möchten, um Produktdaten aus URLs zu parsen, ist der Prozess kurz. Rufen Sie die Seite ab, finden Sie jedes „ ld+json Skript, parsen Sie jedes als JSON und wählen Sie das Objekt aus, dessen Typ „ Productist. Lesen Sie dann diese Felder:

  • nameder Produkttitel
  • sku oder „ gtindie Kennung, die Sie auf Bestellungen angeben
  • brandder Hersteller
  • imageeine URL oder eine Liste von URLs
  • offersder Preis, die Währung und die Verfügbarkeit

Achten Sie auf das Preis- und Währungspaar. Es sind separate Felder, und die Behandlung der bloßen Zahl als Euro ist genau der Grund, warum ein Budget leise schiefgeht. Erfassen Sie jedes Mal beides.

Prüfen Sie auch, wie Bilder aufgelistet sind. Einige Websites liefern ein einzelnes Hero-Bild, andere eine vollständige Galerie. Für Präsentationsboards möchten Sie die Version mit der höchsten Auflösung, also schauen Sie sich das URL-Muster an und prüfen Sie, ob eine größere Variante existiert.

Der Vorteil dieses Weges ist die Stabilität. Da strukturierte Daten in ihrem eigenen Skript-Tag leben, bricht eine Website-Neugestaltung, die das Layout ändert, diese selten, sodass Ihr Parsing weitaus weniger fehleranfällig ist als alles, was auf Selektoren basiert.

Schritt 3: Rückgriff auf Layout-Parsing und Behandlung von blockierten oder JavaScript-Seiten

Einige Seiten enthalten keine nutzbaren strukturierten Daten. In diesem Fall analysieren Sie das sichtbare Layout und lokalisieren Elemente anhand ihrer Tags und CSS-Klassen. Eine Anleitung zum Thema Web Scraping mit Python für Produktinformationen zeigt diesen Stil, indem sie spezifische Selektoren wie eine Überschrift mit der Klasse «product-title» verwendet, um den Namen zu extrahieren.

Das Erlernen des Parsens von Produktdaten aus URLs mit Layout-Parsing funktioniert, ist aber fehleranfällig. Selektoren hängen davon ab, wie die Seite aufgebaut ist. Wenn der Lieferant also seine Vorlage aktualisiert, kann Ihre Extraktion lautlos nichts zurückgeben oder das falsche Element erfassen. Bewahren Sie Ihre Selektoren an einem Ort auf, damit sie leicht zu beheben sind, und überprüfen Sie die Ausgabe stichprobenartig, wenn ein Lieferant seine Website neu startet.

Zwei weitere Hindernisse treten häufig auf:

  • Blockierung. Große Einzelhändler lehnen eine einfache Skriptanfrage ab. Das Senden realistischer Anfrage-Header hilft, obwohl einige Websites mehr erfordern.
  • JavaScript-Rendering. Wenn der Preis oder die Galerie erst erscheint, nachdem die Seite Skripte ausgeführt hat, sieht eine einfache Anfrage eine leere Hülle. Für diese Seiten benötigen Sie einen Headless-Browser wie Playwright oder Selenium, der die Seite so lädt, wie es der Browser eines Menschen tun würde, bevor Sie sie lesen.

Wenn das nach mehr Ingenieurwesen klingt, als ein Designstudio übernehmen möchte, ist das verständlich. Hier setzt der KI-gestützte Web Clipper von ArchiBoard an: Er extrahiert Fotos, Preise und SKUs aus einer Lieferanten-URL, ohne dass Sie Selektoren oder Rendering-Setups pflegen müssen. Welchen Weg Sie auch wählen, testen Sie ihn anhand einiger echter URLs von jedem Lieferanten, bevor Sie ihm ein ganzes Projekt anvertrauen. Erfolg auf einer Website sagt wenig über die nächste aus.

Schritt 4: Währungen normalisieren, Duplikate entfernen und Schätzungen einspeisen

Zu wissen, wie man Produktdaten aus URLs parst, ist nur die halbe Miete, denn Rohdaten sind noch keine nutzbaren Daten. Der letzte Schritt macht sie vergleichbar.

Währung normalisieren. Speichern Sie den ursprünglichen Preis und die Währung, wie sie erfasst wurden, und konvertieren Sie sie dann in die Basiswährung Ihres Projekts unter Verwendung eines Kurses, den Sie zusammen mit dem Datum festhalten. Behalten Sie den ursprünglichen Betrag bei, da sich die Kurse ändern und Lieferanten in ihrer eigenen Währung in Rechnung stellen. ArchiBoard erledigt dies mit Live-Schätzungen in mehreren Währungen, sodass jede Position ohne eine zweite Tabelle in die Projektwährung umgerechnet wird.

Duplikate entfernen. Dasselbe Produkt erscheint oft unter mehreren URLs: Tracking-Parameter, Farbvarianten, regionale Domains, nachgestellte Schrägstriche. Entfernen Sie nicht benötigte Abfragezeichenfolgen, konvertieren Sie den Host in Kleinbuchstaben und verwenden Sie die SKU oder GTIN als Primärschlüssel, sofern vorhanden. Zwei Einträge mit derselben SKU vom selben Lieferanten sind mit ziemlicher Sicherheit dasselbe Produkt.

Prüfen Sie die Felder, die für Innenräume wichtig sind. Strukturierte Daten enthalten selten Handelsattribute wie Abmessungen, Ausführung oder Lieferzeit, sodass diese möglicherweise manuell bearbeitet oder aus dem Beschreibungstext ausgelesen werden müssen. Kennzeichnen Sie jeden Datensatz, dem ein Preis oder eine Artikelnummer fehlt, damit er nicht als Null in eine Schätzung einfließt.

Speisen Sie die Schätzung. Sobald die Datensätze bereinigt sind, gehören sie zu Räumen und nicht in eine flache Liste. Ordnen Sie jedes Produkt einem Raum zu, legen Sie Mengen fest und lassen Sie die Summen pro Raum und pro Projekt aufrollen. Wenn Sie beispielsweise Bodenbeläge beschaffen, erleichtert ein bereinigter Datensatz den Vergleich von Optionen im „ Parkettkatalog “ oder in einer „ Lieferantendatenbank für Parkettböden “ erheblich, da jeder Kandidat dieselben Felder nebeneinander anzeigt.

Um den Aufwand für die Sanitärinstallationen zu umgehen, können Sie den „ gemeinsamen Produktkatalog “ mit über 62.000 Artikeln durchsuchen, die bereits Marken, Preise und Abmessungen enthalten, oder „ ein kostenloses Starter-Konto erstellen “ und Ihre erste Lieferanten-URL hinzufügen. In jedem Fall gilt das Prinzip: Legen Sie Ihre Felder einmal fest, erfassen Sie sie konsistent und lassen Sie die Zahlen für sich sprechen.

Weiterlesen