Websitesuche filtern

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

Hinweis

Achten Sie darauf, dass Sie eine Anwendung und einen Datenspeicher erstellt und Websitedaten in den Datenspeicher aufgenommen haben. Weitere Informationen finden Sie unter Suchanwendung erstellen.

Filterausdrücke

Verwenden Sie Filterausdrücke, um Ihre Website-Suchfilter zu erstellen. Wie Sie Ihre Filter erstellen, hängt davon ab, ob Sie die erweiterte Websiteindexierung aktiviert haben. Je nachdem, ob Sie die einfache Website-Suche oder die erweiterte Websiteindexierung verwenden, finden Sie die entsprechenden Informationen in einem der folgenden Abschnitte:

Filterausdrücke für die einfache Website-Suche

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

Syntax für die einfache Website-Suche

Die folgende Extended 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 obligatorisch.

    # 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 Website-Suche

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 der 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 größer oder gleich dem Wert von lowRange sein, 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. Unterstützte Werte finden Sie unter Suchparameter (rights).

  • siteSearch (String): Gibt ein URL-Muster für die Webseiten an, die von Ihrer Abfrage 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\""}

    Filtert nach Dokumenten, 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\""}

    Filtert nach Dokumenten, die (1) PDF-Dateien sind und (2) auf Englisch verfasst sind.

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

    Filtert nach Dokumenten, die gemeinfrei sind.

Filterausdrücke mit erweiterter Websiteindexierung

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

Verfügbare Felder für die erweiterte Websiteindexierung

Wenn Sie die erweiterte Websiteindexierung verwenden, können Sie Ihre Website-Suche mit diesen Feldern filtern:

  • siteSearch (String): Ein URL-Muster für die Webseiten, die von Ihrer Abfrage 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 Extended 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 obligatorisch.

Beim Filtern nach siteSearch lautet die EBNF-Syntax so:

    # 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;

Beim Filtern nach meta-Tag-Namen und PageMap-Attributnamen lautet die EBNF-Syntax so:

    # 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 einige Filterbeispiele für die erweiterte Websiteindexierung mit siteSearch:

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

    Filtert nach Dokumenten, die sich in der Domain https://example.com/example_domain befinden. Beispiel: https://example.com/example_domain/index.html.

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

    Filtert nach Dokumenten, die sich in einer Domain befinden, die mit https://example.com/subdomains/* übereinstimmt. 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 einer Domain befinden, die mit dem ersten oder zweiten URL-Muster übereinstimmt. Beispiele: https://altostrat.com/subdomain/pages/title_page, https://cymbalgroup.com/subdomain/pages/title_page oder https://altostrat.com/subdomain/pages/INFO.

Hier einige Beispiele für das Filtern nach meta-Tag-Namen oder PageMap-Attributnamen:

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

    Filtert nach Dokumenten, die das meta-Tag oder das PageMap-Attribut product enthalten, wobei der Wert entweder networking oder compute ist.

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

    Filtert nach Dokumenten, die nicht das meta-Tag oder den PageMap-Attributnamen product mit dem Wert storage enthalten.

  • {"filter": "dateModified>= \"2025-07-31T00:00:00Z\")"}

    Filtert nach Dokumenten, deren Datum der letzten Änderung der 31. Juli 2025 ist. Das Format muss dem Format im Dokumentschema entsprechen. Weitere Informationen finden Sie unter DATETIME.

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

So filtern Sie eine Website-Suche:

  1. App-ID suchen. 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.

      Gehen Sie zu Apps

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

  2. Verwenden Sie zum Filtern einer Website-Suche das Feld filter mit der engines.servingConfigs.search Methode.

    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: