Zum Hauptinhalt springen

Webseiten

Öffentliche Webseiten können inklusive verlinkter PDF-, Word- und PowerPoint-Dokumente automatisch indexiert werden. Der Crawler folgt dabei den konfigurierten Regeln und extrahiert den Inhalt der Seiten und Dokumente für die Wissensdatenbank.

Grundkonfiguration​

FeldBeschreibung
Start-URLDie Basis-URL, ab der gecrawlt wird. Mehrere Start-URLs können angegeben werden.
Unterseiten indexierenAktiviert das automatische Crawlen aller verlinkten Unterseiten der Start-URL.
Zusätzliche URLsWeitere Seiten, die indexiert werden sollen, aber nicht automatisch verlinkt sind.
Ausgeschlossene URLsURLs, die beim Crawlen übersprungen werden sollen. Wildcards (z.B. *example.com/blog*) werden unterstützt.

Webseitentyp​

Beim Crawlen von Webseiten kann der Webseitentyp explizit konfiguriert werden:

TypBeschreibung
Statisch (HTML)Die Seite wird als reines HTML ohne Browser gecrawlt. Das ist in der Regel schneller und ressourcenschonender.
Dynamisch (JavaScript)Die Seite wird mit einem Browser gerendert. Damit können JavaScript-Inhalte erfasst, auf Elemente gewartet und vor der Extraktion Klicks ausgeführt werden.

Hinweise zur Auswahl​

  • Statisch (HTML) eignet sich für klassische Webseiten, bei denen der relevante Inhalt bereits im ausgelieferten HTML enthalten ist.
  • Dynamisch (JavaScript) solltest du wählen, wenn Inhalte erst nach dem Laden durch JavaScript sichtbar werden.
  • Bei Statisch (HTML) sind Browser-spezifische Selektoren wie Wait-Selektor und Click-Selektor nicht relevant.
  • Bei neuen Webseiten-Quellen ist standardmässig Statisch (HTML) vorausgewählt.

URL-Filterung mit Präfixen und Mustern​

Neben der Start-URL kannst du präzise steuern, welche verlinkten Seiten indexiert werden sollen. Dies ermöglicht eine granulare Kontrolle über den Crawling-Umfang.

Verlinkte Seiten mit folgenden URL-Präfixen indexieren​

Mit diesem Feld kannst du explizit definieren, welche URL-Bereiche beim Crawlen berücksichtigt werden sollen. Der Crawler folgt nur Links, die mit einem der angegebenen Präfixe übereinstimmen.

Beispiele:

  • https://www.example.ch/ – Indexiert alle Seiten der Domain
  • https://www.example.ch/de/ – Indexiert nur deutschsprachige Seiten
  • https://www.example.ch/de/produkte/ – Beschränkt auf den Produktbereich

Anwendungsfälle:

  • Mehrsprachige Websites: Nur bestimmte Sprachversionen indexieren
  • Themenbereiche: Nur relevante Sektionen einer grossen Website erfassen
  • Subdomain-Filterung: Mehrere Subdomains gezielt einschliessen

Verlinkte Seiten mit folgenden URLs oder Mustern ausschliessen​

Dieses Feld erlaubt es, bestimmte URL-Bereiche vom Crawling auszuschliessen, selbst wenn sie unter einem indexierten Präfix liegen. Dies ist nützlich, um irrelevante oder sensible Bereiche auszusparen.

Beispiele:

  • https://www.siteA.ch/de/admin/ – Schliesst den Admin-Bereich aus
  • */de/ueber-uns/* – Schliesst «Über uns»-Seiten im deutschen Bereich aus
  • */blog/archiv/* – Verhindert die Indexierung von Archiv-Seiten in allen Sprachversionen
  • *?print=true – Schliesst Druckversionen von Seiten aus

Pattern-Syntax:

  • * – Platzhalter für beliebige Zeichen
  • Exakte URLs werden direkt ausgeschlossen
  • Patterns mit * ermöglichen flexible Muster

Verlinkte Dokumente​

Zusätzlich zu den Webseiten können auch verlinkte Dokumente indexiert werden:

FeldBeschreibung
Verlinkte Dokumente indexierenAktiviert die Indexierung von verlinkten PDF-, Word- und PowerPoint-Dokumenten.
Zusätzliche Dokument-URLsWeitere Dokument-Links, die indexiert werden sollen.
Ausgeschlossene Dokument-URLsDokument-Links, die beim Crawlen übersprungen werden sollen.
URL-Filterung für Dokumente

Auch für verlinkte Dokumente steht die gleiche URL-Filterung wie bei Webseiten zur Verfügung:

  • Dokumente mit folgenden URL-Präfixen indexieren: Nur Dokumente, die mit den angegebenen Präfixen übereinstimmen, werden indexiert
  • Dokumente mit folgenden URLs oder Mustern ausschliessen: Bestimmte Dokumente können gezielt vom Crawling ausgeschlossen werden

Die Pattern-Syntax funktioniert identisch wie bei der URL-Filterung für Webseiten.

Alter der Inhalte​

Über das maximale Seitenalter kann gesteuert werden, wie alte Inhalte berücksichtigt werden. Seiten, deren Veröffentlichungsdatum älter als die eingestellte Zeitspanne ist, werden beim Crawlen übersprungen.

Das Datum wird aus <time>-Elementen (datetime) oder gängigen Meta-Tags (z.B. article:published_time, og:published_time) ausgelesen. Seiten ohne erkennbares Datum werden nicht gefiltert.

Diese Funktion ist besonders bei Blogs oder News-Seiten nützlich, damit der Chatbot keine veralteten Inhalte verwendet.

Erweiterte HTML-Extraktion​

Für Webseiten mit spezieller Struktur können CSS-Selektoren konfiguriert werden:

FeldBeschreibung
Content-SelektorCSS-Selektor für den zu indexierenden Inhaltsbereich (z.B. main, article)
Exclude-SelektorCSS-Selektor für Bereiche, die aus dem Inhalt ausgeschlossen werden sollen (z.B. Navigation, Footer)
Click-SelektorCSS-Selektor für Elemente, die vor der Indexierung geklickt werden sollen
Wait-SelektorCSS-Selektor, auf dessen Erscheinen gewartet wird (z.B. bei JavaScript-gerenderten Inhalten)
Custom HeadersZusätzliche HTTP-Header für die Requests (z.B. für API-Keys)

Authentifizierung​

Für nicht öffentlich zugängliche Seiten kann eine Anmeldung konfiguriert werden:

MethodeBeschreibung
KeineDie Seite ist öffentlich zugänglich.
Basic AuthHTTP-Basisauthentifizierung mit Benutzername und Passwort.

Automatische Reindexierung​

Webseiten können in regelmässigen Abständen automatisch neu indexiert werden:

IntervallBeschreibung
NieManuell neu indexieren (Standard)
TäglichEinmal pro Tag
WöchentlichEinmal pro Woche
MonatlichEinmal pro Monat

Automatische Metadaten-Extraktion​

Beim Crawlen werden strukturierte Metadaten aus jeder Seite automatisch extrahiert und zusammen mit dem Inhalt im RAG-Prozess verwendet. Diese Metadaten helfen dem Chatbot, Antworten besser einzuordnen und präziser zu formulieren.

Folgende Metadaten werden automatisch ausgelesen:

  • Breadcrumbs: Navigationspfad der Seite (z.B. Home → Produkte → Software), aus JSON-LD (BreadcrumbList) oder gängigen CSS-Strukturen
  • Keywords: Schlüsselwörter aus dem <meta name="keywords">-Tag
  • Autor: Name des Autors aus <meta name="author"> oder JSON-LD (author)
  • Dokumenttyp: Schema.org-Typ der Seite (z.B. FAQPage, Article, Product)
  • Kategorie: Thematische Einordnung aus JSON-LD (articleSection, category), Open Graph (article:section) oder <meta name="category">

Die extrahierten Metadaten sind im CMS unter jedem indexierten Dokument einsehbar.

Umgang mit einer Webseiten-Firewall​

Wird der Crawler durch die Firewall einer Webseite blockiert (generiert den Fehler-Code 403: FORBIDDEN), kann in der Firewall eine Regel zum Erlauben des Crawlers eingerichtet werden. Dabei stehen zwei Optionen zur Verfügung:

  • Statische IP-Adressen: Der Apptiva Klar Instanz können folgende statische IP-Adressen zugewiesen werden, welche in der Firewall der Whitelist hinzugefügt werden können:

    • 34.65.11.159
    • 34.65.50.222
    • 34.65.164.143
  • Custom Header: Alternativ kann im CMS in der Webseiten-Konfiguration (unter Verschiedenes) ein benutzerdefinierter HTTP-Header (z.B. X-Apptiva-Klar-Token) konfiguriert werden, der von Apptiva Klar bei ausgehenden Anfragen mitgesendet wird. In der Firewall kann Apptiva Klar anhand dieses Headers der Whitelist hinzufügt werden.

Cloudflare​

Wenn für die Firewall einer Webseite Cloudflare verwendet wird, kann in Cloudflare für den Chatbot eine Skip-Rule eingerichtet werden. Diese kann für die IP-Adressen oder auch für den Custom Header eingerichtet werden.

Wichtig: Dabei ist zu beachten, dass bei der Skip-Rule auch die Browser-Integritäts-Prüfung übersprungen wird, da der Crawler einen Headless Browser verwendet, welcher diese Prüfung nicht besteht.