Webseiten automatisch und manuell aktualisieren

Wenn in Ihrem Datenspeicher die einfache Websitesuche verwendet wird, entspricht die Aktualität des Index Ihres Geschäfts der Aktualität, die in der Google Suche verfügbar ist.

Wenn die erweiterte Websiteindexierung in Ihrem Datenspeicher aktiviert ist, werden die darin enthaltenen Webseiten auf folgende Arten aktualisiert:

  • Automatische Aktualisierung
  • Manuelle Aktualisierung
  • Sitemap-basierte Aktualisierung

Auf dieser Seite werden automatische und manuelle Aktualisierungen beschrieben. Informationen zur Sitemap-basierten Aktualisierung und zur Implementierung finden Sie unter Indexierung und Aktualisierung gemäß Sitemap.

Automatische Aktualisierung

Vertex AI Search führt die automatische Aktualisierung so aus:

  • Nachdem Sie einen Datenspeicher erstellt haben, wird ein erster Index für die enthaltenen Seiten generiert.
  • Nach der Erstindexierung werden alle neu entdeckten Seiten indexiert und vorhandene Seiten nach dem Best-Effort-Prinzip noch einmal gecrawlt.
  • Datenspeicher, bei denen eine Abfragerate von 50 Abfragen pro 30 Tage erreicht wird, werden regelmäßig aktualisiert.

Manuelle Aktualisierung

Wenn Sie bestimmte Webseiten in einem Datenspeicher aktualisieren möchten, bei dem die erweiterte Websiteindexierung aktiviert ist, können Sie die Methode recrawlUris aufrufen. Im Feld uris geben Sie jede Webseite an, die gecrawlt werden soll. Die recrawlUris-Methode ist ein Vorgang mit langer Ausführungszeit, der so lange ausgeführt wird, bis die angegebenen Webseiten gecrawlt wurden oder bis nach 24 Stunden ein Zeitlimit überschritten wird, je nachdem, was zuerst eintritt. Wenn bei der Methode recrawlUris ein Zeitlimit erreicht wird, können Sie die Methode noch einmal aufrufen und die noch zu crawlenden Webseiten angeben. Sie können die Methode operations.get abfragen, um den Status des erneuten Crawlings zu überwachen.

Einschränkungen beim Recrawling

Es gibt Einschränkungen für die Häufigkeit und Anzahl der Webseiten, die Sie gleichzeitig crawlen können:

  • Anrufe pro Tag Die maximale Anzahl von Aufrufen der Methode recrawlUris ist fünf pro Tag und Projekt.
  • Webseiten pro Aufruf Die maximale Anzahl von uris-Werten, die Sie mit einem Aufruf der recrawlUris-Methode angeben können, beträgt 10.000.

Webseiten in Ihrem Datenspeicher noch einmal erfassen

Sie können bestimmte Webseiten in einem Datenspeicher manuell crawlen, für den die erweiterte Websiteindexierung aktiviert ist.

REST

So können Sie über die Befehlszeile bestimmte Webseiten in Ihrem Datenspeicher crawlen:

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

    1. Rufen Sie in der Google Cloud Console die Seite Agent Builder auf und klicken Sie im Navigationsmenü auf Datenspeicher.

      Zur Seite „Datenspeicher“

    2. Klicken Sie auf den Namen des Datenspeichers.

    3. Rufen Sie auf der Datenseite Ihres Datenspeichers die Datenspeicher-ID ab.

  2. Rufen Sie die Methode recrawlUris auf und geben Sie im Feld uris die Webseiten an, die gecrawlt werden sollen. Jede uri steht für eine einzelne Seite, auch wenn sie Sternchen (*) enthält. Platzhaltermuster werden nicht unterstützt.

    curl -X POST \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/siteSearchEngine:recrawlUris" \
    -d '{
      "uris": [URIS]
    }'
    

    Ersetzen Sie Folgendes:

    • PROJECT_ID ist die ID Ihres Google Cloud-Projekts.
    • DATA_STORE_ID: die ID des Vertex AI Search-Datenspeichers.
    • URIS: die Liste der Webseiten, die gecrawlt werden sollen, z. B. "https://example.com/page-1", "https://example.com/page-2", "https://example.com/page-3".

    Die Ausgabe sieht in etwa so aus:

    {
      "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-0123456789012345678",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata"
      }
    }
    
  3. Speichern Sie den name-Wert als Eingabe für den operations.get-Vorgang, wenn Sie den Status des erneuten Crawlings im Blick behalten möchten.

Status des erneuten Crawlings prüfen

Die recrawlUris-Methode, mit der Sie Webseiten in einem Datenspeicher crawlen, ist ein langwieriger Vorgang, der so lange ausgeführt wird, bis die angegebenen Webseiten gecrawlt wurden oder bis nach 24 Stunden ein Zeitlimit erreicht wird. Sie können den Status dieses Vorgangs mit langer Ausführungszeit überwachen, indem Sie die Methode operations.get abfragen und dabei den von der Methode recrawlUris zurückgegebenen Wert name angeben. Führen Sie die Abfrage so lange fort, bis in der Antwort Folgendes angezeigt wird: (1) Alle Ihre Webseiten wurden gecrawlt oder (2) der Vorgang ist abgelaufen, bevor alle Ihre Webseiten gecrawlt wurden. Wenn recrawlUris eine Zeitüberschreitung auftritt, können Sie ihn noch einmal aufrufen und dabei die Websites angeben, die nicht gecrawlt wurden.

REST

So überwachen Sie den Status eines erneuten Crawlings über die Befehlszeile:

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

    1. Rufen Sie in der Google Cloud Console die Seite Agent Builder auf und klicken Sie im Navigationsmenü auf Datenspeicher.

      Zur Seite „Datenspeicher“

    2. Klicken Sie auf den Namen des Datenspeichers.

    3. Rufen Sie auf der Datenseite Ihres Datenspeichers die Datenspeicher-ID ab.

  2. Fragen Sie die Methode operations.get ab.

    curl -X GET \
    -H "Authorization: Bearer $(gcloud auth print-access-token)" \
    -H "Content-Type: application/json" \
    -H "X-Goog-User-Project: PROJECT_ID" \
    "https://discoveryengine.googleapis.com/v1alpha/OPERATION_NAME"
    

    Ersetzen Sie Folgendes:

  3. Bewerten Sie jede Antwort.

    • Wenn in einer Antwort angegeben wird, dass ausstehende URIs vorhanden sind und der erneute Crawlingvorgang noch nicht abgeschlossen ist, werden Ihre Webseiten noch gecrawlt. Fortfahren mit dem Abfragen.

      Beispiel

        {
          "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-0123456789012345678",
          "metadata": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata",
            "createTime": "2023-09-05T22:07:28.690950Z",
            "updateTime": "2023-09-05T22:22:10.978843Z",
            "validUrisCount": 4000,
            "successCount": 2215,
            "pendingCount": 1785
          },
          "done": false,
          "response": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisResponse",
          }
        }

      Die Antwortfelder können so beschrieben werden:

      • createTime: Gibt die Uhrzeit an, zu der der langlaufende Vorgang gestartet wurde.
      • updateTime: Gibt an, wann die Metadaten des Vorgangs mit langer Ausführungszeit zuletzt aktualisiert wurden. Die Metadaten werden alle fünf Minuten aktualisiert, bis der Vorgang abgeschlossen ist.
      • validUrisCount: Gibt an,dass Sie bei Ihrem Aufruf der recrawlUris-Methode 4.000 gültige URIs angegeben haben.
      • successCount: gibt an,dass 2.215 URIs erfolgreich gecrawlt wurden.
      • pendingCount: gibt an,dass 1.785 URIs noch nicht gecrawlt wurden.
      • done: Ein Wert von false gibt an, dass der erneute Crawlingvorgang noch läuft.

    • Wenn in einer Antwort angegeben wird, dass keine ausstehenden URIs vorhanden sind (kein pendingCount-Feld zurückgegeben wird) und der erneute Crawling-Vorgang abgeschlossen ist, werden Ihre Webseiten gecrawlt. Beenden Sie die Abfrage.

      Beispiel

        {
          "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-0123456789012345678",
          "metadata": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata",
            "createTime": "2023-09-05T22:07:28.690950Z",
            "updateTime": "2023-09-05T22:37:11.367998Z",
            "validUrisCount": 4000,
            "successCount": 4000
          },
          "done": true,
          "response": {
            "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisResponse"
          }
        }

      Die Antwortfelder können so beschrieben werden:

      • createTime: Gibt die Uhrzeit an, zu der der langlaufende Vorgang gestartet wurde.
      • updateTime: Gibt an, wann die Metadaten des Vorgangs mit langer Ausführungszeit zuletzt aktualisiert wurden. Die Metadaten werden alle fünf Minuten aktualisiert, bis der Vorgang abgeschlossen ist.
      • validUrisCount: Gibt an,dass Sie bei Ihrem Aufruf der recrawlUris-Methode 4.000 gültige URIs angegeben haben.
      • successCount: gibt an,dass 4.000 URIs erfolgreich gecrawlt wurden.
      • done: Ein Wert von true gibt an, dass der erneute Crawlingvorgang abgeschlossen ist.
  4. Wenn in einer Antwort angegeben wird, dass ausstehende URIs vorhanden sind und der Vorgang zum erneuten Crawling abgeschlossen ist, ist der Vorgang zum erneuten Crawling nach 24 Stunden abgelaufen, bevor alle Ihre Webseiten gecrawlt wurden. Beginnen Sie noch einmal bei Webseiten in Ihrem Datenspeicher noch einmal erfassen. Verwenden Sie die failedUris-Werte in der operations.get-Antwort für die Werte im Feld uris in Ihrem neuen Aufruf der recrawlUris-Methode.

    Example.

    {
      "name": "projects/PROJECT_ID/locations/global/collections/default_collection/dataStores/DATA_STORE_ID/operations/recrawl-uris-8765432109876543210",
      "metadata": {
        "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisMetadata",
        "createTime": "2023-09-05T22:07:28.690950Z",
        "updateTime": "2023-09-06T22:09:10.613751Z",
        "validUrisCount": 10000,
        "successCount": 9988,
        "pendingCount": 12
      },
      "done": true,
      "response": {
        "@type": "type.googleapis.com/google.cloud.discoveryengine.v1alpha.RecrawlUrisResponse",
        "failedUris": [
          "https://example.com/page-9989",
          "https://example.com/page-9990",
          "https://example.com/page-9991",
          "https://example.com/page-9992",
          "https://example.com/page-9993",
          "https://example.com/page-9994",
          "https://example.com/page-9995",
          "https://example.com/page-9996",
          "https://example.com/page-9997",
          "https://example.com/page-9998",
          "https://example.com/page-9999",
          "https://example.com/page-10000"
        ],
        "failureSamples": [
          {
            "uri": "https://example.com/page-9989",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9990",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9991",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9992",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9993",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9994",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9995",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9996",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9997",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          },
          {
            "uri": "https://example.com/page-9998",
            "failureReasons": [
              {
                "corpusType": "DESKTOP",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              },
              {
                "corpusType": "MOBILE",
                "errorMessage": "Page was crawled but was not indexed by UCS within 24 hours."
              }
            ]
          }
        ]
      }
    }

    Hier sind einige Beschreibungen von Antwortfeldern:

    • createTime. Der Zeitpunkt, zu dem der Vorgang mit langer Ausführungszeit gestartet wurde.
    • updateTime: Der Zeitpunkt der letzten Aktualisierung der Metadaten des Vorgangs mit langer Ausführungszeit. Die Metadaten werden alle fünf Minuten aktualisiert, bis der Vorgang abgeschlossen ist.
    • validUrisCount: Gibt an,dass Sie in Ihrem Aufruf der recrawlUris-Methode 10. 000 gültige URIs angegeben haben.
    • successCount: Gibt an,dass 9. 988 URIs erfolgreich gecrawlt wurden.
    • pendingCount: Gibt an, dass 12 URIs noch nicht gecrawlt wurden.
    • done. Ein Wert von true gibt an, dass der Vorgang abgeschlossen ist.
    • failedUris: Eine Liste der URIs, die nicht gecrawlt wurden, bevor der erneute Crawlingvorgang abgelaufen ist.
    • failureInfo: Informationen zu URIs, die nicht gecrawlt werden konnten. Es werden höchstens zehn failureInfo-Arraywerte zurückgegeben, auch wenn mehr als zehn URIs nicht gecrawlt werden konnten.
    • errorMessage: Der Grund, warum ein URI nicht gecrawlt wurde, nach corpusType. Weitere Informationen finden Sie unter Fehlermeldungen.

Zeitnahe Aktualisierung

Wir empfehlen Ihnen, Ihre neuen und aktualisierten Seiten manuell zu aktualisieren, damit Sie den neuesten Index haben.

Fehlermeldungen

Wenn Sie den Status des erneuten Crawlings im Blick behalten und der Vorgang abläuft, während Sie die operations.get-Methode abfragen, gibt operations.get Fehlermeldungen für Webseiten zurück, die nicht gecrawlt wurden. In der folgenden Tabelle sind die Fehlermeldungen aufgeführt. Außerdem wird angegeben, ob der Fehler vorübergehend ist (ein vorübergehender Fehler, der sich von selbst behebt) und welche Maßnahmen Sie ergreifen können, bevor Sie die recrawlUris-Methode noch einmal versuchen. Alle vorübergehenden Fehler können sofort noch einmal versucht werden. Alle nicht vorübergehenden Fehler können nach der Behebung noch einmal versucht werden.

Fehlermeldung Ist es ein vorübergehender Fehler? Aktion vor dem erneuten Crawling
Die Seite wurde gecrawlt, aber nicht innerhalb von 24 Stunden von Vertex AI Search indexiert. Ja Verwenden Sie die failedUris-Werte in der operations.get-Antwort für die Werte im Feld uris, wenn Sie die recrawlUris-Methode aufrufen.
Das Crawling wurde durch das robots.txt der Website blockiert Nein Heben Sie die Blockierung des URI in der robots.txt-Datei Ihrer Website auf, prüfen Sie, ob der Googlebot-User-Agent die Website crawlen darf, und versuchen Sie noch einmal, die Website zu crawlen. Weitere Informationen finden Sie unter Anleitung zum Schreiben und Einreichen einer robots.txt-Datei. Wenn Sie nicht auf die robots.txt-Datei zugreifen können, wenden Sie sich an den Domaininhaber.
Seite nicht erreichbar Nein Prüfen Sie den URI, den Sie beim Aufrufen der Methode recrawlUris angegeben haben. Geben Sie den literalen URI und kein URI-Muster an.
Zeitüberschreitung beim Crawling Ja Verwenden Sie die failedUris-Werte in der operations.get-Antwort für die Werte im Feld uris, wenn Sie die recrawlUris-Methode aufrufen.
Seite wurde vom Google-Crawler abgelehnt Ja Verwenden Sie die failedUris-Werte in der operations.get-Antwort für die Werte im Feld uris, wenn Sie die recrawlUris-Methode aufrufen.
URL konnte vom Google-Crawler nicht aufgerufen werden Nein Wenn es mehrere Weiterleitungen gibt, verwenden Sie den URI der letzten Weiterleitung und versuchen Sie es noch einmal.
Seite nicht gefunden (404) Nein Prüfen Sie den URI, den Sie beim Aufrufen der Methode recrawlUris angegeben haben. Geben Sie den literalen URI und kein URI-Muster an.

Seiten, die mit einem 4xx-Fehlercode antworten, werden aus dem Index entfernt.

Authentifizierung für Seite erforderlich Nein Die erweiterte Websiteindexierung unterstützt nicht das Crawling von Webseiten, für die eine Authentifizierung erforderlich ist.

Umgang mit gelöschten Seiten

Wenn eine Seite gelöscht wird, empfiehlt Google, die gelöschten URLs manuell zu aktualisieren.

Wenn Ihr Websitedatenspeicher bei einer automatischen oder manuellen Aktualisierung gecrawlt wird und eine Webseite mit dem Clientfehlercode 4xx oder dem Serverfehlercode 5xx antwortet, wird sie aus dem Index entfernt.