← Alle Beiträge

Wie KORENA einen Holzpreisindex auf FourA aufgebaut hat

KORENA hat einen täglichen europäischen Holzpreisindex auf Basis von Forstportalen, Auktions-PDFs und zehn Währungen aufgebaut. FourA ist der Request-Layer dahinter.

Europäische Holzpreisdaten sind technisch öffentlich, aber praktisch unbrauchbar. Ein Land gibt Eichenpreise in Euro pro Kubikmeter ohne Steuern an. Ein Nachbarland teilt Buchenpreise in Landeswährung inklusive Steuern, vergraben in einem gescannten PDF ohne durchsuchbare Textebene. Erschwerend kommt hinzu, dass stehende Bäume, Holz am Waldweg und ausgewählte Auktionslose oft nebeneinander aufgeführt werden, als wären es identische Produkte.

Die Rohdaten existieren. Marktinformationen nicht.

KORENA hat den KORENA Timber Index gestartet, um das zu ändern. Das Ergebnis ist ein täglicher, frei zugänglicher Referenzindex für europäische Laubholz-, Schnittholz- und Bohlenpreise. Stand Mitte 2026 erfasst der Index rund zwei Dutzend Baumarten und 170 regionale Preisreihen in zehn Ländern (Rumänien, Deutschland, Bulgarien, Polen, Frankreich, Österreich, Italien, Finnland, Norwegen, Schweden), ergänzt durch eine EU-weite Marktplatzebene.

Damit ein zweiköpfiges Entwicklungsteam diese Bandbreite abdecken konnte, musste KORENA eine zentrale Entscheidung treffen: wer das Web-Handling übernimmt. Sie entschieden sich für FourA und leiteten alles darüber.

Ein zentrales Gateway zum Web

KORENA traf früh eine Architekturentscheidung: Jeder externe Web-Request läuft über FourA. Sie eliminierten vereinzelte Scraper, Einmalskripte und eigene Befehle aus der Codebase.

Dabei ging es nicht um Bequemlichkeit. Es ging um Konsistenz. Forstportale verhalten sich unberechenbar. Manche sind statische HTML-Seiten. Andere sind moderne Auktionsplattformen, die Daten erst nach dem Rendern im Browser anzeigen. Behördenseiten sind oft langsam, veraltet oder stark geschützt.

Indem KORENA den gesamten Datenverkehr über die Request-Infrastruktur von FourA leitet, werden Retries, Backoff, Logging und Alerting für jede Quelle einheitlich abgewickelt. Zudem lässt sich jedes abgerufene Dokument hashen, speichern und für Audits bis zum finalen Preis zurückverfolgen.

Die passende Fetch-Strategie pro Quelle wählen

Statt Scraping-Logik für jede Seite fest im Code zu verankern, ordnet KORENA jede Datenquelle direkt in der Datenbank einem spezifischen FourA-Endpoint zu (siehe choosing the right task type für die vollständige Übersicht). Sie können Strategien wechseln, ohne den eigentlichen Parsing-Code anzufassen:

  • Single (/single/): Statische HTML-Seiten, XML-Feeds und direkte PDF-Downloads. Deutsche Statistikberichte, Updates bulgarischer Staatsforsten, rumänische Preistabellen. Schnell, ressourcenschonend, der richtige Standard für die meisten Seiten.

  • Browser (/browser/): Interaktive Webanwendungen, die einen echten Browser-Kontext erfordern. Polens Auktionsplattform e-Drewno muss gerendert werden, bevor Zahlen sichtbar sind. Das initiale HTML enthält keine nutzbaren Daten.

  • Proxy Finder (/proxy/): Das Fallback für die schwierigsten Ziele. Stärkere Rotation sowie unblocker: true für handshake-level checks.

Weil dies eine Einstellung pro Quelle ist und kein fest verdrahtetes Skript, kann KORENA eine Quelle von Single über Browser zu Proxy Finder verschieben, wenn eine Website ihre Abwehrmechanismen ändert. Die Parsing-Schicht bekommt davon nichts mit.

Gescannte PDFs: Der schwierigste Teil

Moderne Web-APIs sind unkompliziert. Der am schwersten zu automatisierende Fall sind reine Bild-PDFs. Preislisten und Auktionsergebnisse, die als Scans ohne jede Textebene veröffentlicht werden. Für einen Menschen ist das nervig. Für einen täglichen Index stoppt es die Pipeline.

Die Pipeline von KORENA verarbeitet sie durch eine saubere Arbeitsteilung:

  • Abruf: FourA lädt die rohen PDF-Bytes herunter, täglich und zuverlässig.

  • Textauswertung: KORENA prüft die Datei auf eine nutzbare native Textebene.

  • Verarbeitung und Extraktion: Wenn das PDF ein flaches Bild ist, rastert KORENA die Seiten und schickt sie durch OCR sowie KI-Dokumentenextraktion. Dabei werden benutzerdefinierte Sprachhinweise und Baumarten-Wörterbücher angewendet, um lokale forstwirtschaftliche Begriffe zu erfassen.

  • Schemavalidierung: Die Ausgabe wird anhand desselben Schemas validiert wie jede andere Quelle.

Nichts davon funktioniert, wenn du das Dokument nicht jeden Tag zuverlässig abrufen kannst. Das ist der Schritt, den FourA übernimmt.

Abrufen vs. Verstehen: Eine saubere Trennung

Die Aufgabe von FourA ist es, Rohdaten-Bytes zuverlässig zu liefern. Es muss nichts über Holz wissen. Dadurch kann sich KORENA zu 100 % auf das konzentrieren, was es tatsächlich beherrscht: chaotische Daten in einen standardisierten Index zu verwandeln. Alles Domänenspezifische bleibt bei KORENA. HTML wird lokal geparst, digitale PDFs werden mit pdfjs-dist gelesen und gescannte PDFs werden per OCR verarbeitet.

Im Normalisierungsschritt werden aus Rohzahlen ein Index. Der Preis für stehendes Holz ist kein Sägestammpreis, und ein lokales Auktionsergebnis inklusive Mehrwertsteuer ist nicht direkt mit einem Netto-Exportangebot vergleichbar. Um aus Rohzahlen vergleichbare Marktinformationen zu machen, konvertiert KORENA alle Daten in einen Standard: Euro pro Kubikmeter, exklusive Mehrwertsteuer, Frei-Haus-Äquivalent.

Um das präzise umzusetzen, berücksichtigt das System:

Der Index trennt zudem verschiedene Marktsegmente. Industrieholz in großen Mengen, Wertholzversteigerungen und Einzelhandelsangebote werden als eigene Kategorien aufgeführt und niemals miteinander vermischt. Ein Premium-Auktionslos verzerrt somit nicht die Basislinie.

Die Trennung ist der entscheidende Punkt: FourA löst den Webzugriff, KORENA löst das Thema Holz. Keines von beiden wird zu einer Blackbox, von der das andere abhängt.

Warum Transparenz bei Holzpreisen plötzlich dringend ist

Strengere europäische Regulierungen wie die EU-Entwaldungsverordnung (EUDR) treiben den Holzmarkt hin zu vollständiger Rückverfolgbarkeit und sauberer Herkunftsdokumentation. Preistransparenz ist die andere Hälfte dieser Gleichung. Waldbesitzer, die regionale Werte vergleichen, Einkäufer, die Angebote prüfen, und digitale Marktplätze, die Basispreise festlegen, benötigen tägliche, lokalisierte und vergleichbare Daten. Keine veralteten Jahresdurchschnitte. Keine einzelnen lokalen Stichproben.

Ein schlankes Engineering-Team aus zwei Personen, das zehn Länder und Hunderte unvorhersehbare Webformate abdecken muss, kann seine Zeit nicht mit der Verwaltung von Proxy-Infrastruktur, Browser-Flotten und ständigen Anpassungen pro Website verbringen (siehe die versteckten Kosten eigener Scraper für die genaue Rechnung). FourA übernimmt den Request-Layer. KORENA gewinnt die Zeit zurück, um sich auf Arten-Normalisierung, OCR-Optimierung, Preislogik und Audit-Trails zu konzentrieren: die Arbeit, die nur sie leisten können.

Tagesaktuelle Holzpreise erforderten früher einen Anruf beim regionalen Makler. Heute kann jeder die Kurve unter timber-index.korena.eu selbst analysieren. Die nächsten zehn Produkte dieser Art werden keine Zeit haben, den Fetch-Layer von Grund auf neu zu bauen. Darauf setzen wir.


Du baust ein Produkt auf Basis öffentlicher Webdaten und hast keine Lust mehr, eigene Scraper und Proxy-Infrastrukturen zu warten? Starte jetzt mit FourA.