Websitesuche filtern

Auf dieser Seite wird erläutert, wie Sie Suchanfragen für eine Suchanwendung mit Websitedaten filtern.

Hinweise

Sie müssen eine App und einen Datenspeicher erstellt und Websitedaten in Ihren Datenspeicher aufgenommen haben. Weitere Informationen finden Sie unter Such-App erstellen.

Filterausdrücke

Mit Filterausdrücken können Sie die Suchfilter für Ihre Website erstellen. Wie Sie Ihre Filter erstellen, hängt davon ab, ob Sie die erweiterte Website-Indexierung aktiviert haben. Wählen Sie einen der folgenden Abschnitte aus, je nachdem, ob Sie die einfache Website-Suche oder die erweiterte Websiteindexierung verwenden:

Filterausdrücke für die einfache Website-Suche

In diesem Abschnitt wird das Verhalten von Filterausdrücken bei der einfachen Websitesuche erläutert (erweiterte Websiteindexierung ist deaktiviert).

Syntax für die einfache Websuche

Die folgende erweiterte Backus-Naur-Form fasst die Syntax für Filterausdrücke zusammen, mit der Sie einen Website-Suchfilter erstellen können, wenn Sie die einfache Website-Suche verwenden. Doppelte Anführungszeichen nach dem Doppelpunkt in einem Filter sind zwingend erforderlich.

    # A single expression or multiple expressions that are joined by "AND".
  filter = expression, { "AND", expression };
  expression =
    # A simple expression applying to a text url string.
    | filter_key, ":", \"text_value\"
  filter_key = (cr | highRange | lowRange | fileType | lr | rights | siteSearch);
  text_value = string value to filter on;

Verfügbare Felder für die einfache Websitesuche

Hier sind die Felder, die für das Filtern Ihrer Website-Suche verfügbar sind, wenn Sie die einfache Website-Suche verwenden:

  • cr (String): Beschränkt die Suchergebnisse auf Dokumente aus einem bestimmten Land. Eine Liste der unterstützten Werte finden Sie unter Werte für die Ländersammlung.

  • highRange (String): Gibt die Obergrenze des Suchbereichs an. Wenn ein Dokument eine Zahl enthält, muss diese Zahl kleiner oder gleich dem Wert von highRange sein, damit das Dokument in die Antwort aufgenommen wird. Geben Sie sowohl highRange als auch lowRange an, um eine Suchanfrage im Bereich dieser Parameter zu erstellen.

  • lowRange (String): Gibt die Untergrenze des Suchbereichs an. Wenn ein Dokument eine Zahl enthält, muss diese Zahl mindestens dem Wert von lowRange entsprechen, damit das Dokument in die Antwort aufgenommen wird. Geben Sie sowohl lowRange als auch highRange an, um eine Suchanfrage im Bereich dieser Parameter zu erstellen.

  • fileType (String): Beschränkt die Suchergebnisse auf Dokumente mit einer bestimmten Erweiterung. Eine Liste der unterstützten Dateitypen finden Sie unter Von Google indexierbare Dateitypen.

  • lr (String): Beschränkt die Suchergebnisse auf Dokumente in einer bestimmten Sprache. Eine Liste der unterstützten Sprachen finden Sie unter Suchparameter (lr).

  • rights (string) Filtert Suchergebnisse nach Lizenzierung. Informationen zu den unterstützten Werten finden Sie unter Abfrageparameter (rights).

  • siteSearch (String): Gibt ein URL-Muster für die Webseiten an, die in Ihrer Anfrage durchsucht werden sollen.

Beispiele für die einfache Website-Suche

Hier einige Filterbeispiele für die einfache Website-Suche:

  • {"filter": "cr:\"countryUS\" AND siteSearch:\"https://example.com/example_domain\""}

    Filter für Dokumente, die (1) aus den USA stammen und (2) sich in der Domain https://example.com/example_domain befinden.

  • {"filter": "fileType:\".pdf\" AND lr:\"lang_en\""}

    Filter für Dokumente, die (1) PDF-Dateien und (2) auf Englisch sind.

  • {"filter": "rights:\"cc_publicdomain\""}

    Filter für Dokumente, die frei von Urheberrechten sind.

Ausdrücke mit erweiterter Websiteindexierung filtern

In diesem Abschnitt wird das Verhalten von Filterausdrücken bei aktivierter erweiterter Websiteindexierung beschrieben.

Verfügbare Felder für die erweiterte Websiteindexierung

Wenn Sie die erweiterte Websiteindexierung nutzen, können Sie die Suche auf Ihrer Website mit den folgenden Feldern filtern:

  • siteSearch (String): Ein URL-Muster für die Webseiten, die in Ihrer Anfrage durchsucht werden sollen.
  • meta-Tag-Namen und PageMap-Attributnamen: Strukturierte Daten von Ihren Webseiten, die dem Schema Ihres Datenspeichers hinzugefügt werden können, damit die Felder durchsuchbar, abrufbar und indexierbar sind. Weitere Informationen finden Sie unter Strukturierte Daten für die erweiterte Websiteindexierung verwenden.

Syntax für die erweiterte Websiteindexierung

Die folgende erweiterte Backus-Naur-Form fasst die Syntax für Filterausdrücke zusammen, mit der Sie einen Website-Suchfilter erstellen können, wenn Sie die erweiterte Websiteindexierung verwenden. Doppelte Anführungszeichen nach dem Doppelpunkt in einem Filter sind zwingend erforderlich.

Beim Filtern nach siteSearch lautet die EBNF-Syntax:

    # A single expression or multiple expressions that are joined by "OR".
  filter = expression, { "OR", expression };
    # Expressions can be prefixed with "-" or "NOT" to express a negation.
  expression = [ "-" | "NOT " ],
    # A simple expression applying to a text url string.
    | filter_key, ":", \"url_string\"
  filter_key = siteSearch;
  url_string = double quoted string representing a URL;

Wenn Sie nach meta-Tag-Namen und PageMap-Attributnamen filtern, gilt die folgende EBNF-Syntax:

    # A single expression or multiple expressions that are joined by "OR".
  filter = expression, { "OR", expression };
    # Expressions can be prefixed with "-" or "NOT" to express a negation.
  expression = [ "-" | "NOT " ],
   # Function "ANY" returns true if the field exactly matches any of the literals.
    | text_field, ":", "ANY", "(", literal, { ",", literal }, ")"
  literal = double quoted string;
  # text_field corresponds to the meta tag or PageMap Attribute name, for example, category
  text_field = text field;

Beispiele für die erweiterte Websiteindexierung

Hier sind einige Filterbeispiele für die erweiterte Websiteindexierung mit siteSearch:

  • {"filter": "siteSearch:\"https://example.com/example_domain\""}

    Filter für Dokumente in der Domain https://example.com/example_domain. Beispiel: https://example.com/example_domain/index.html.

  • {"filter": "siteSearch:\"https://example.com/subdomains/*\""}

    Filtert nach Dokumenten in Domains, die mit https://example.com/subdomains/* übereinstimmen. Beispiel: https://example.com/subdomains/example_subdomain_page

  • {"filter": "siteSearch:\"https://altostrat.com/subdomain/pages/*\" OR siteSearch:\"http://cymbalgroup.com/pages/*\""}

    Filtert nach Dokumenten, die sich in Domains befinden, die dem ersten oder zweiten URL-Muster entsprechen. Beispiel: https://altostrat.com/subdomain/pages/title_page, https://cymbalgroup.com/subdomain/pages/title_page oder https://altostrat.com/subdomain/pages/INFO.

Hier sind einige Beispiele für das Filtern nach meta oder PageMap-Attributname:

  • {"filter": "product: ANY(\"networking\",\"compute\")"}

    Filtert nach Dokumenten, die das Tag meta oder das PageMap-Attribut product mit dem Wert networking oder compute enthalten.

  • {"filter": "NOT product: ANY(\"storage\")"}

    Filter für Dokumente, die das Tag meta oder den PageMap-Attributnamen product mit dem Wert storage nicht enthalten.

Weitere Informationen zu meta-Tag-Namen und PageMap-Attributnamen, die für die Indexierung verwendet werden, finden Sie unter Beispiel für die Verwendung von meta-Tags und Beispiel für die Verwendung von PageMaps.

So filtern Sie eine Websuche:

  1. Suchen Sie Ihre App-ID. Wenn Sie Ihre App-ID bereits haben, fahren Sie mit dem nächsten Schritt fort.

    1. Rufen Sie in der Google Cloud Console die Seite KI-Anwendungen auf.

      Zu Apps wechseln

    2. Suchen Sie auf der Seite Apps nach dem Namen Ihrer App und entnehmen Sie die App-ID der Spalte ID.

  2. Wenn Sie eine Websuche filtern möchten, verwenden Sie das Feld filter mit der Methode engines.servingConfigs.search.

    curl -X POST -H "Authorization: Bearer $(gcloud auth application-default print-access-token)" \
    -H "Content-Type: application/json" \
    "https://discoveryengine.googleapis.com/v1/projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search:search" \
    -d '{
     "servingConfig": "projects/PROJECT_ID/locations/global/collections/default_collection/engines/APP_ID/servingConfigs/default_search",
    "query": "QUERY",
    "filter": "FILTER"
    }'
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID: die Projekt-ID.
    • APP_ID: Die ID Ihrer App.
    • QUERY: Der Abfragetext für die Suche.
    • FILTER: ein Textfeld zum Filtern Ihrer Suche mit einem Filterausdruck. Der Standardwert ist ein leerer String.

      Informationen zum Erstellen eines Filters für die einfache Websitesuche finden Sie unter Filterausdrücke mit der einfachen Websitesuche.

      Informationen zum Erstellen eines Filters für die erweiterte Websiteindexierung finden Sie unter Filterausdrücke mit erweiterter Websiteindexierung.