WB Mason Produkt-Scraper

Nicht ein Preis.
Ein Preis je Menge.

Dies ist der einzige Dienst in unserem Katalog, dessen Preisspalte eine Leiter ist. Eine URL aus dem Werbeartikelbereich kam mit einundzwanzig von dreiundzwanzig gefüllten Spalten zurück, und das Preisfeld hält fünf Mengenstufen, wo jede andere Seite hier eine einzelne Zahl hält. Wir haben die Zeile an der Live-Seite geprüft - und an der Lieferantenseite, auf die sie zeigt.

einmalig 500 Zeilen gratisdanach 0,002 $ pro Zeile21 von 23 Spalten in unserem LaufCSV · JSON · Excel
So funktioniert es

Eine Liste von URLs rein, eine Tabelle raus.

  1. SCHRITT 1Melden Sie sich auf der Plattform an.
  2. SCHRITT 2Öffnen Sie den WB Mason Products Scraper.
  3. SCHRITT 3Fügen Sie die gewünschten WB-Mason-Werbeartikel-URLs ein, eine pro Zeile - die ProductDetails-Seiten des Shops, den dieser Dienst liest.
  4. SCHRITT 4Wählen Sie Ihr Ausgabeformat (CSV / JSON / XLSX).
  5. SCHRITT 5Starten Sie den Job.
  6. SCHRITT 6Laden Sie die Ergebnisse herunter - dreiundzwanzig Spalten je Zeile.
Was Sie erwartet

Was man wissen sollte, bevor man ihn laufen lässt.

Der Preis ist eine Leiter, und die billigste Stufe steht vorne

pricing hielt auf unserer Zeile fünf Mengenstufen in einer Zeichenkette, und der Stückpreis fällt, während die Menge steigt. price_from ist nicht der Preis bei der kleinsten Menge - es ist die billigste Stufe, die Sie erst bei der größten Bestellung erreichen. Behandeln Sie ihn als Untergrenze und nicht als Einstiegspreis, sonst fällt jedes Angebot, das Sie aus dieser Datei bauen, zu niedrig aus.

Die URL-Spalte verlässt WB Mason vollständig

Das ist die Falle. Sie übermitteln eine Adresse des WB-Mason-Shops, und die Spalte url kommt mit einem Verweis auf die Website eines anderen Unternehmens zurück - des Lieferanten, der den Artikel tatsächlich herstellt. Wir haben bestätigt, dass der Lieferant auf der WB-Mason-Seite genannt wird, es ist also keine Verwechslung. Aber ein Importer, der annimmt, url sei ein Link zurück auf die abgefragte Seite, baut einen Katalog voller Verweise auf jemand anderen.

Veredelung ist sauber modelliert, in sechs Spalten

Das ist kein Einzelhandelsschema mit angeflanschtem Druckfeld. imprint_methods, imprint_colors, imprint_sizes, full_color_process, personalization und sold_unimprinted sind alle eigene Spalten. Auf unserer Zeile trugen die ersten drei echte Werte - eine Liste von Verfahren, fünfzehn benannte Farben und drei Druckflächen -, während die letzten drei sagen, was der Artikel nicht unterstützt. So sieht die Datenstruktur von Werbeartikeln aus, und deshalb ist die Spaltenliste hier länger als auf unseren Einzelhandelsseiten.

Eine Spalte kommt als geleaktes Objekt statt als Zahl

shipping_weight kam nicht als Gewicht zurück. Es kam als in eine Zeichenkette gegossenes Objekt - die interne Struktur ausgedruckt statt ausgelesen - mit zwei verschachtelten Beschreibungen und einem angehängten Einheitenwort. Es ist kein gültiges JSON, weil die Anführungszeichen die falsche Sorte sind, ein Parser weist es also zurück. Ein brauchbares Gewicht steckt darin, aber Sie holen es mit einem regulären Ausdruck heraus statt mit einem Feldzugriff. Wir weisen darauf hin, statt es still aufzuräumen, denn der Export ist das, was Sie tatsächlich bekommen.

Die Bildspalte ist ein Pfad, keine Adresse

image hielt einen relativen Pfad statt einer abrufbaren URL - ein Verzeichnissegment und eine Kennung, ohne Schema und ohne Host. Jeder andere Katalogdienst, den wir betreiben, liefert eine absolute Bildadresse; hier muss also eine Basis vorangestellt werden, bevor irgendetwas lädt. Besser im Loader zu bemerken als im CDN-Log.

Wir haben es auf beiden Seiten geprüft, und keine hat strukturierte Daten

Die Seite, die Sie übermitteln, liefert rund 290 KB HTML und trägt überhaupt keinen strukturierten Datenblock - sie ist eine clientseitig gerenderte Anwendung, jeder Wert musste also von der gerenderten Seite gelesen werden statt aus einem maschinenlesbaren Datensatz. Wir haben die Zeile trotzdem bestätigt: Artikelnummer, Produktname, oberste und unterste Stufe der Preisleiter, Herkunftsland und Material stehen alle darauf - und die ungewöhnliche Schreibweise des Materials auf unserer Zeile ist genau die der Seite. Die in url genannte Lieferantenseite trägt dieselbe Artikelnummer und denselben Tiefstpreis.

Was Sie zurückbekommen

Dreiundzwanzig Spalten, einundzwanzig davon gefüllt.

Aus einem echten Export gelesen, in Blattreihenfolge. Die Anmerkungen stammen von einem Produkt, das unsere Läufe dreimal zurückgaben, und von direkten Abrufen sowohl der übermittelten Seite als auch der Lieferantenseite, auf die sie zeigt. Wo hier steht, dass eine Spalte einen Wert trug, beschreibt das eine Zeile, die wir tatsächlich halten.

query
Die WB-Mason-URL, die Sie übermittelt haben, zurückgegeben. Auf allen fünf unserer Zeilen gefüllt, auch auf den beiden, die der Dienst abgewiesen hat - und genau das lässt einen Ergebnissatz gegen Ihre Eingabeliste abgleichen.
name
Der Produkttitel, wie der Shop ihn angibt, beginnend mit einer Größe. Gefüllt, und er passt zur Seite. Beachten Sie, dass er sizes widerspricht; siehe die Anmerkung unten.
item_number
Die Katalognummer des Lieferanten, mit Buchstabenpräfix. Gefüllt, und sie erscheint sowohl auf der Shopseite als auch auf der eigenen Seite des Lieferanten - eine Zeile lässt sich also gegen beide prüfen.
description
Der Produkttext. Gefüllt, aber ein einzelner kurzer Satz statt eines Spezifikationsblocks. Als Bezeichnung nützlich, als Beschreibung dünn.
categories
Eine kommagetrennte Liste der Warengruppen, in denen der Artikel sitzt. Gefüllt mit drei auf unserer Zeile, die letzte davon allgemein - rechnen Sie also mit Filtern statt mit direktem Gruppieren.
colors
Die verfügbaren Farbvarianten, kommagetrennt. Gefüllt mit acht Zweifarbkombinationen auf unserer Zeile. Das sind die Farben des Artikels, nicht die Druckfarben - die haben eine eigene Spalte.
sizes
Das Größenfeld. Gefüllt - und das ist der Wert, der nicht zum Namen passt. Die Zahl hier ist etwa doppelt so groß wie die im Titel, und wir wissen nicht, welches Maß sie beschreibt. Siehe die Anmerkung unten und bauen Sie nicht ungeprüft darauf.
materials
Woraus der Artikel besteht. Gefüllt. Die Groß- und Kleinschreibung ist ungewöhnlich, und wir haben geprüft, dass sie die der Seite ist und nicht etwas, das unser Exporter damit gemacht hat - normalisieren Sie sie also, wenn Sie gruppieren.
price_from
Ein einzelner Preis mit Währungssymbol. Gefüllt - und es ist die billigste Stufe der Leiter in pricing, die nur bei der größten Menge gilt. Eine Untergrenze, kein Einstiegspreis.
pricing
Die Mengenleiter, als eine Zeichenkette: Menge und Stückpreis, durch Semikola getrennt. Gefüllt mit fünf Stufen auf unserer Zeile, der Stückpreis fällt bei jedem Schritt. Das ist die Spalte, die diesen Dienst von jedem anderen Katalog unterscheidet, den wir betreiben, und sie muss an zwei Trennzeichen zerlegt werden, bevor sie brauchbar ist.
imprint_methods
Wie der Artikel veredelt werden kann, kommagetrennt. Gefüllt auf unserer Zeile mit einer unveredelten und einer bedruckten Option.
imprint_colors
Die verfügbaren Druckfarben, kommagetrennt. Gefüllt mit fünfzehn Einträgen auf unserer Zeile, die meisten ein Code und ein Name in einem Token - nach dem Komma bleibt Ihnen also ein zweiter Parse-Schritt.
imprint_sizes
Die bedruckbaren Flächen, kommagetrennt. Gefüllt mit drei auf unserer Zeile, in gemischter Notation - ein Durchmesser, ein einfarbiges Rechteck und ein mehrfarbiges. Freitext statt Zahlen.
full_color_process
Auf unserer Zeile leer. Eine von nur zwei Spalten, die ohne Wert zurückkamen. Bei einem Artikel, der Vollfarbdruck unterstützt, stünden hier vermutlich die Konditionen; unserer unterstützt ihn nicht.
personalization
Auf unserer Zeile leer, mit demselben Vorbehalt. Lesen Sie es als Fehlen der Option und nicht als fehlende Daten - aber das ist ein Schluss, und eine Zeile kann ihn nicht belegen.
sold_unimprinted
Ob der Artikel unveredelt gekauft werden kann. Gefüllt, und dies ist das eine Feld in der ganzen Datei, das als echter Wahrheitswert ankommt und nicht als Zeichenkette. Schreiben Sie keinen Loader, der das Wort erwartet.
production_time
Die Vorlaufzeit als Freitext, auf unserer Zeile eine Spanne von Werktagen. Gefüllt. Eine Zeichenkette, keine Zahl - zerlegen Sie sie, wenn Sie danach sortieren müssen.
origin
Das Herstellungsland, auf unserer Zeile in Großbuchstaben. Gefüllt.
shipping_weight
Gefüllt - und das am schlechtesten geformte Feld des Exports. Statt eines Gewichts hält es ein in eine Zeichenkette gegossenes Objekt, in einem Stil zitiert, der kein gültiges JSON ist, mit zwei verschachtelten Beschreibungen und einem angehängten Einheitenwort. Eine brauchbare Zahl steckt darin; sie herauszuholen bedeutet einen regulären Ausdruck statt eines Parse-Vorgangs.
shipping_dimensions
Die Kartonmaße als Freitext mit Zollzeichen. Gefüllt auf unserer Zeile. Drei Zahlen, aber eine Zeichenkette - und die Abstände um die Zollzeichen sind unregelmäßig.
image
Gefüllt mit einem relativen Pfad statt einer absoluten URL. Es braucht eine vorangestellte Basis, bevor es auflöst, was auf keinen anderen Katalogdienst zutrifft, den wir betreiben.
url
Gefüllt - und es ist keine WB-Mason-Adresse. Sie zeigt auf die eigene Website des Lieferanten, eine andere Domain als die von Ihnen übermittelte. Wir haben bestätigt, dass der Lieferant auf der Shopseite genannt wird, das ist also Absicht und keine Verwechslung. Nehmen Sie nicht an, diese Spalte verweise zurück auf die abgefragte Stelle.
status
Ein Kennzeichen je Zeile, geschrieben von unserem Exporter, nicht von WB Mason. Über unsere fünf Läufe hinweg nahm es zwei Werte an: ok auf der echten Shop-URL und http 404 auf den beiden Platzhalter-Übermittlungen, was eine fiktive Adresse eben liefert. Lesen Sie es zuerst.

Dreiundzwanzig Spalten je Zeile · CSV, JSON oder Excel

Lesen Sie diese Tabelle mit einer Zahl im Kopf: eins. Unsere fünf Läufe erzeugten drei erfolgreiche Zeilen, und diese drei sind Byte für Byte identisch - dasselbe Produkt, dreimal an zwei Tagen abgerufen. Alles oben beschreibt also einen Artikel gut und sagt nichts darüber, wie sich der Dienst über einen Katalog hinweg verhält. Einundzwanzig der dreiundzwanzig Spalten trugen darauf Werte, und wir haben sie an zwei Live-Seiten bestätigt, aber wir können Ihnen nicht sagen, ob das nächste Produkt dieselben Spalten füllt. Vier Dinge werden einen Importer beißen, und alle vier sind Eigenschaften des Exports und nicht des Artikels. price_from ist die billigste Stufe der Mengenleiter, nicht der Einstiegspreis. url zeigt auf die eigene Seite des Lieferanten, nicht auf WB Mason. image ist ein relativer Pfad und braucht eine Basis. Und shipping_weight ist ein in eine Zeichenkette gegossenes Objekt, das kein JSON-Parser annimmt. Noch etwas berichten wir, ohne es aufzulösen: Die Größe in name und die Zahl in sizes stimmen nicht überein, und der Gewichtsblock nennt ebenfalls zwei verschiedene Größen. Wir wissen nicht, welches das Produktmaß ist, und raten deshalb nicht für Sie.

Häufige Arbeitsabläufe

Wofür ein Veredelungsschema gut ist.

Angebote

Ein Angebot bei der Menge rechnen, die Sie wirklich bestellen

Die Leiter ist der Punkt. Zerlegen Sie pricing in Menge und Stückpreis, und Sie können eine Positionssumme bei jeder Stufe berechnen, ohne jemanden zu fragen - und Sie sehen den Abstand zwischen Einstiegsstufe und Untergrenze, den price_from allein verbirgt.

Vertrieb · Beschaffung
Veredelung filtern

Die Artikel finden, die Ihre Markierung aufnehmen

Verfahren, Farben und Druckflächen sind eigene Spalten, eine Auswahlliste von Artikeln mit einer bestimmten Veredelung ist also ein Filter und keine Leseübung. sold_unimprinted ist ein echter Wahrheitswert, was die Frage nach unbedruckter Ware zu einer einzeiligen Abfrage macht.

Sortiment · Beschaffung
Lieferzeitplanung

Eine Auswahlliste nach Fertigungsdauer sortieren

production_time und origin kommen zusammen, und dieses Paar entscheidet, ob ein Artikel rechtzeitig ankommen kann. Beide sind auf unserer Zeile Freitext, planen Sie also ein, die Spanne vor dem Sortieren zu zerlegen.

Betrieb · Planung
Lieferantenzuordnung

Sehen, wer das Gekaufte tatsächlich herstellt

Weil url auf die eigene Seite des Lieferanten und nicht auf den Shop auflöst, sagt Ihnen ein Lauf über eine Auswahlliste, welcher Hersteller hinter welchem Angebot steht. Das ist ungewöhnlich, und sobald man das Verhalten kennt, hört es auf, ein Fehler zu sein, und fängt an, nützlich zu sein.

Beschaffung · Lieferkette
Preise

Zahlen Sie nur, was Sie tatsächlich nutzen.

Gratis-Kontingent

Die ersten 500 Zeilen sind gratis

Einmalig, bei der Anmeldung. Keine Karte, und nichts, was danach gekündigt werden müsste.

Einmalig, bei der Anmeldung
Preis

danach 0,002 $ pro Zeile

Abgerechnet nach tatsächlich gelieferten Zeilen. Dieser Dienst lieferte in jedem Lauf, den wir halten, eine Zeile je übermittelter URL, eine Liste kostet also ungefähr das, was ihre Länge nahelegt.

Abgerechnet nach gelieferten Zeilen
Kein Abo

Nichts Wiederkehrendes

Guthaben verfällt nicht im Monatsrhythmus. Bepreisen Sie ein Werbeartikelsortiment einmal im Quartal und dazwischen nichts, wenn die Arbeit so aussieht.

Kein monatlicher Verfall
10 % Rabatt auf Ihren ersten bezahlten Lauf.Verwenden Sie beim Checkout den Code LIVESCRAPER10.
Registrieren
Passt gut zu

Andere Lieferanten, andere Schemata.

Das Rechtliche

Ist es legal, WB Mason zu scrapen?

Katalogpreise und Artikelnummern in einem öffentlichen Shop sind gewöhnliche Geschäftstatsachen. Der Zugang war hier der ereignisloseste aller von uns abgedeckten Seiten, und die Vorbehalte betreffen die Daten und nicht die Erlaubnis.

Ein Preis, ein Produktname und eine Katalognummer sind Tatsachen über zum Verkauf angebotene Waren, gelesen von einer Seite, die jedem Besucher ausgeliefert wird. Nichts in den dreiundzwanzig Spalten beschreibt eine Person: kein Name, keine E-Mail-Adresse, keine Telefonnummer, kein Konto - die datenschutzrechtlichen Fragen, die unsere personenbezogenen Dienste prägen, stellen sich hier also nicht. Die Preise stehen auf der Anzeige statt hinter einem Konto, und deshalb kommen die Geldspalten in diesem Export voll an.

Der Zugang war der einfachste, den wir je festgehalten haben. Die robots.txt des Shops beantwortete am 12. August 2026 eine gewöhnliche Anfrage mit HTTP 200 und ist neunzig Bytes lang: eine allgemeine Gruppe, ein einziger verbotener Pfad, der nichts mit Produkten zu tun hat, und eine Sitemap-Zeile. Mit einem richtigen Gruppen-Matcher gelesen ist der Produktdetailpfad, den dieser Dienst verwendet, erlaubt. Nichts, was wir liefen, wurde blockiert, und die einzigen nicht erfolgreichen Zeilen in unserem Export sind der Dienst, der für eine nicht existierende Platzhalteradresse ein Nicht-gefunden liefert. Ein ehrlicher Vorbehalt zur Reichweite und nicht zur Erlaubnis: Die Seite ist eine clientseitig gerenderte Anwendung ohne strukturierte Daten, die Werte werden also von der gerenderten Seite gelesen - was gegenüber einem Redesign empfindlicher ist als ein maschinenlesbarer Datensatz.

Unsere eigenen Bedingungen sind dieselben wie bei jedem anderen Dienst hier. Nur öffentlich zugängliche Seiten, nichts hinter einem Login, keine Tracker Dritter auf der Datenebene, und Exporte werden nach 30 Tagen automatisch gelöscht. Ihre ersten 500 Zeilen sind gratis und brauchen keine Kreditkarte.

livescraper.app · was einen Lauf prägt
robots.txt ist 90 Bytes lang und erlaubt den Produktpfad
21 von 23 Spalten in unserem Lauf gefüllt
Ein Produkt, dreimal zurückgegeben - nicht drei Produkte
Keine strukturierten Daten auf der Seite; Werte aus dem DOM gelesen
Exporte werden nach 30 Tagen automatisch gelöscht
Hier wurde nichts von uns blockiert, und beide geprüften Seiten beantworteten eine gewöhnliche Anfrage.
Häufige Fragen

Was Leute fragen, bevor sie sich anmelden.

Ist das der Bürobedarfskatalog?+
Nein, und das gehört klargestellt. WB Mason ist vor allem für Bürobedarf bekannt, aber die Domain, die dieser Dienst liest, ist der Werbeartikel-Shop - bedruckte Ware, die man in Mengen bestellt. Deshalb handeln die Spalten von Druckverfahren und Mengenstufen statt von Papier und Kartons.
Warum ist der Preis eine Liste statt einer Zahl?+
Weil Werbeartikel nach Menge bepreist werden. Die Spalte pricing hielt auf unserer Zeile fünf Mengenstufen, der Stückpreis fiel bei jedem Schritt. price_from ist die billigste dieser Stufen - die man erst bei der größten Menge erreicht -, sie als Preis eines Stücks zu behandeln unterschätzt also jedes Angebot, das Sie darauf bauen.
Warum zeigt die URL-Spalte auf ein anderes Unternehmen?+
Weil sie auf den Lieferanten auflöst, der den Artikel herstellt, statt auf den abgefragten Shop. Wir haben die übermittelte Seite geprüft, und der Lieferant wird dort genannt - es ist also Absicht und keine Verwechslung. Sobald man es weiß, ist es sogar nützlich; aber ein Importer, der annimmt, url verweise zurück auf WB Mason, liegt auf jeder Zeile falsch.
Wie vollständig ist eine Zeile?+
Bei dem Produkt, das unsere Läufe zurückgaben, trugen einundzwanzig von dreiundzwanzig Spalten Werte. Nur full_color_process und personalization waren leer, und bei diesem Artikel sehen beide eher nach einem Fehlen der Option als nach fehlenden Daten aus - auch wenn ein Produkt das nicht belegen kann.
Wie viele Produkte haben Sie getestet?+
Eines. Wir halten fünf Läufe: Drei lieferten Zeilen, und diese drei sind Byte für Byte identisch, es ist also dasselbe Produkt, dreimal an zwei Tagen abgerufen. Die anderen beiden übermittelten eine Platzhalteradresse und bekamen ein Nicht-gefunden. Wir sagen das lieber klar, als drei Zeilen wie drei Produkte wirken zu lassen.
Woher wissen Sie, dass die Werte stimmen?+
Wir haben beide Seiten am 12. August 2026 abgerufen. Die Shopseite liefert rund 290 KB HTML und trägt die Artikelnummer, den Produktnamen, die oberste und unterste Stufe der Preisleiter, das Herkunftsland und das Material - samt seiner ungewöhnlichen Schreibweise, die sich als die der Seite herausstellt. Die in url genannte Lieferantenseite trägt dieselbe Artikelnummer und denselben Tiefstpreis.
Was stimmt mit der Versandgewichtsspalte nicht?+
Sie hält ein in eine Zeichenkette gegossenes Objekt statt eines Gewichts - die interne Struktur ausgedruckt, mit zwei verschachtelten Beschreibungen und einem angehängten Einheitenwort. Der Zitierstil ist kein gültiges JSON, ein Parser weist es also zurück. Eine brauchbare Zahl steckt darin, aber Sie holen sie mit einem regulären Ausdruck heraus. Wir berichten sie, wie sie ankommt, statt sie in der Beschreibung aufzuräumen.
Warum passt die Größe nicht zum Namen?+
Wir wissen es nicht, und wir raten nicht. Der Titel beginnt mit einem Maß, die Spalte sizes hält etwa das Doppelte, und der Gewichtsblock nennt ebenfalls zwei verschiedene Größen. Es kann aufgeblasen gegen flach sein oder Durchmesser gegen Umfang. Prüfen Sie es an der Anzeige, bevor Sie sich auf eines verlassen.
Wurde irgendetwas blockiert?+
Nein. Die robots.txt des Shops ließ sich sauber lesen - sie ist neunzig Bytes lang, mit einem einzigen verbotenen Pfad ohne Bezug zu Produkten - und beide geprüften Seiten beantworteten eine gewöhnliche Anfrage. Die einzigen nicht erfolgreichen Zeilen in unserem Export sind eine Platzhalteradresse, die ein Nicht-gefunden liefert.
In welchen Formaten kann ich exportieren?+
CSV, JSON oder Excel. Die dreiundzwanzig Spalten sind in allen dreien gleich. Beachten Sie, dass sold_unimprinted im JSON ein echter Wahrheitswert ist - daran zu denken lohnt sich, wenn Sie über ein Format gehen, das keinen solchen Typ kennt.

Eine Leiter, kein Preis. Und wir haben sie geprüft.

Dreiundzwanzig Spalten mit fünf Mengenstufen, sechs Veredelungsfeldern und einem Lieferantenlink, aus einer Shop-URL - mit jedem Wert an zwei Live-Seiten bestätigt. Ihre ersten 500 Zeilen sind gratis, danach je 0,002 $.

Sofort aktiv · keine Karte erforderlich

WB-Mason-Produktdaten scrapen

WB Mason ist vor allem als Bürobedarfshändler bekannt, aber der Shop, den dieser Dienst liest, ist sein Werbeartikelkatalog - bedruckte Ware, die in Mengen bestellt und nach Auftrag veredelt wird. Diese Unterscheidung prägt alles am Export. Statt der siebzehn Einzelhandelsspalten, die unsere anderen Katalogdienste liefern, liefert dieser dreiundzwanzig, und sechs davon handeln von Veredelung: welche Druckverfahren der Artikel annimmt, welche Farben, welche bedruckbaren Flächen, ob er Vollfarbdruck unterstützt, ob er personalisierbar ist und ob er überhaupt unveredelt gekauft werden kann. Wer hier Kopierpapier erwartet, findet etwas ganz anderes, und die Seite ist für den Einkäufer geschrieben, der diese Daten tatsächlich will.

Der wichtigste Unterschied ist der Preis. Jede andere Katalogseite auf dieser Website nennt eine Zahl je Produkt; diese nennt eine Leiter. Unser Lauf lieferte fünf Mengenstufen in einem einzigen Feld, der Stückpreis fällt bei jedem Schritt, während die Bestellung wächst. Das macht die begleitende Spalte zu einer Falle, die klar benannt gehört: Der Wert, der als Preis „ab“ gekennzeichnet ist, ist in Wahrheit die billigste Stufe, der Satz, den man erst bei der größten Menge erreicht. Es ist eine Untergrenze und kein Einstiegspreis, und ein daraus gebautes Angebot fällt ohne Lesen der Leiter jedes Mal zu niedrig aus. Dieses Feld zu zerlegen braucht zwei Trennzeichen - eines zwischen den Stufen und eines zwischen Menge und Satz -, und es ist das Erste, was in einem Importer zu schreiben ist.

Drei weitere Eigenschaften der Datei erwischen einen Loader, der gegen unsere anderen Dienste geschrieben wurde. Die Adressspalte zeigt nicht auf WB Mason: Sie löst auf den Lieferanten auf, der den Artikel herstellt, auf dessen eigener Domain. Wir haben bestätigt, dass der Lieferant auf der Shopseite genannt wird, das ist also Absicht und keine Verwechslung - und für die Lieferantenzuordnung sogar nützlich, sobald man damit rechnet. Die Bildspalte hält einen relativen Pfad statt einer abrufbaren Adresse, es muss also eine Basis vorangestellt werden. Und die Versandgewichtsspalte hält ein in eine Zeichenkette gegossenes Objekt statt einer Zahl, in einem Stil zitiert, den kein JSON-Parser annimmt, mit zwei verschachtelten Beschreibungen und einem Einheitenwort hinter der schließenden Klammer. Ein echtes Gewicht steckt darin; es herauszuholen ist ein regulärer Ausdruck, kein Feldzugriff.

Wir haben die Zeile geprüft, statt ihr zu vertrauen. Am 12. August 2026 beantwortete die Shopseite eine gewöhnliche Anfrage mit rund zweihundertneunzig Kilobyte HTML, und sie trägt überhaupt keinen strukturierten Datenblock - sie ist eine clientseitig gerenderte Anwendung, jeder Wert im Export musste also von der gerenderten Seite kommen. Trotzdem stehen Artikelnummer, Produktname, oberste und unterste Stufe der Leiter, Herkunftsland und Material alle darauf, und die ungewöhnliche Schreibweise des Materials in unserer Zeile ist genau die der Seite. Die in der Adressspalte genannte Lieferantenseite trägt dieselbe Artikelnummer und denselben Tiefstpreis. Was wir nicht bieten können, ist Breite: Unsere fünf Läufe erzeugten drei erfolgreiche Zeilen, und diese drei sind Byte für Byte identisch, es ist also ein Produkt, dreimal beobachtet, und nicht drei Produkte. Die übrigen zwei übermittelten eine Platzhalteradresse und bekamen ein Nicht-gefunden. Das ist eine gut belegte einzelne Zeile und ein ungetesteter Katalog, und wir kennzeichnen es lieber so, als die Zeilenzahl wie Abdeckung wirken zu lassen. Der Zugang selbst war der ereignisloseste aller von uns abgedeckten Seiten - die robots.txt des Shops ist neunzig Bytes lang und erlaubt den Produktpfad. Nur öffentlich zugängliche Seiten, keine Tracker Dritter auf der Datenebene, Exporte werden nach 30 Tagen automatisch gelöscht, und Ihre ersten 500 Zeilen sind gratis, ohne Kreditkarte.