Webseiten automatisch und manuell aktualisieren

Wenn in Ihrem Datenspeicher die einfache Website-Suche 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 Webseiten in Ihrem Datenspeicher auf folgende Weise aktualisiert:

  • Automatische Aktualisierung
  • Manuelle Aktualisierung
  • Aktualisierung auf Grundlage von Sitemaps

Auf dieser Seite wird das automatische und manuelle Aktualisieren beschrieben. Informationen zum Verständnis und zur Implementierung der sitemapbasierten Aktualisierung finden Sie unter Indexierung und Aktualisierung anhand von Sitemaps.

Automatische Aktualisierung

Vertex AI Search führt automatische Aktualisierungen so aus:

  • Nachdem Sie einen Datenspeicher erstellt haben, wird ein erster Index für die enthaltenen Seiten generiert.
  • Nach der ersten Indexierung werden alle neu gefundenen Seiten indexiert und vorhandene Seiten nach Möglichkeit noch einmal gecrawlt.
  • Daten-Repositories, die eine Abfragerate von 50 Abfragen/30 Tagen erreichen, werden regelmäßig aktualisiert.

Manuelle Aktualisierung

Wenn Sie bestimmte Webseiten in einem Datenspeicher mit aktivierter erweiterter Websiteindexierung aktualisieren möchten, können Sie die Methode recrawlUris aufrufen. Im Feld uris geben Sie jede Webseite an, die gecrawlt werden soll. Die Methode recrawlUris ist ein Vorgang mit langer Ausführungszeit, der ausgeführt wird, bis die angegebenen Webseiten gecrawlt werden oder bis das Zeitlimit nach 24 Stunden überschritten wird – je nachdem, was zuerst eintritt. Wenn für die Methode recrawlUris ein Zeitlimit überschritten wird, können Sie die Methode noch einmal aufrufen und dabei die Webseiten angeben, die noch gecrawlt werden müssen. Sie können die Methode operations.get abfragen, um den Status des erneuten Crawlings zu überwachen.

Einschränkungen beim erneuten Crawlen

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

  • Anrufe pro Tag: Die Methode recrawlUris darf maximal 20-mal pro Tag und Projekt aufgerufen werden.
  • Webseiten pro Aufruf: Die maximale Anzahl von uris-Werten, die Sie mit einem Aufruf der Methode recrawlUris angeben können, beträgt 10.000.

Webseiten in Ihrem Datenspeicher neu crawlen

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

REST

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

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

    1. Rufen Sie in der Google Cloud Console die Seite KI-Anwendungen 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 mit dem Feld uris jede Webseite an, die gecrawlt werden soll. Jedes uri steht für eine einzelne Seite, auch wenn es 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: 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 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 Ihres Vorgangs zum erneuten Crawlen überwachen.

Status des erneuten Crawlings überwachen

Die recrawlUris-Methode, mit der Sie Webseiten in einem Datenspeicher crawlen, ist ein lang andauernder Vorgang, der ausgeführt wird, bis die angegebenen Webseiten gecrawlt werden oder bis nach 24 Stunden ein Zeitüberschreitungsfehler auftritt. Sie können den Status dieses Vorgangs mit langer Ausführungszeit überwachen, indem Sie die Methode operations.get abfragen und den von der Methode recrawlUris zurückgegebenen Wert name angeben. Fahren Sie mit dem Abrufen fort, bis in der Antwort angegeben wird, dass (1) alle Ihre Webseiten gecrawlt wurden oder (2) für den Vorgang eine Zeitüberschreitung aufgetreten ist, bevor alle Ihre Webseiten gecrawlt wurden. Wenn für recrawlUris eine Zeitüberschreitung auftritt, können Sie die Funktion noch einmal aufrufen und die Websites angeben, die nicht gecrawlt wurden.

REST

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

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

    1. Rufen Sie in der Google Cloud Console die Seite KI-Anwendungen 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 Vorgang zum erneuten Crawlen noch nicht abgeschlossen ist, werden Ihre Webseiten weiterhin gecrawlt. Weiter 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 Startzeit des Vorgangs mit langer Ausführungszeit an.
      • 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 in Ihrem Aufruf der Methode recrawlUris 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 Vorgang zum erneuten Crawlen noch läuft.

    • Wenn in einer Antwort angegeben wird, dass keine ausstehenden URIs vorhanden sind (es wird kein pendingCount-Feld zurückgegeben) und der Vorgang zum erneuten Crawlen 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 Startzeit des Vorgangs mit langer Ausführungszeit an.
      • 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 in Ihrem Aufruf der Methode recrawlUris 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 Vorgang zum erneuten Crawlen abgeschlossen ist.
  4. Wenn eine Antwort darauf hinweist, dass ausstehende URIs vorhanden sind und der Vorgang zum erneuten Crawlen abgeschlossen ist, ist für den Vorgang zum erneuten Crawlen nach 24 Stunden ein Zeitlimit überschritten worden, bevor alle Ihre Webseiten gecrawlt wurden. Beginnen Sie noch einmal mit Webseiten in Ihrem Datenspeicher neu crawlen. Verwenden Sie die failedUris-Werte in der operations.get-Antwort für die Werte im Feld uris in Ihrem neuen Aufruf der Methode recrawlUris.

    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 Methode recrawlUris 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 vor dem Zeitüberschreitungsfehler beim erneuten Crawling nicht gecrawlt wurden.
    • 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 von corpusType nicht gecrawlt werden konnte. Weitere Informationen finden Sie unter Fehlermeldungen.

Zeitnahe Aktualisierung

Google empfiehlt, dass Sie auf Ihren neuen und aktualisierten Seiten eine manuelle Aktualisierung durchführen, um sicherzustellen, dass Sie den neuesten Index haben.

Fehlermeldungen

Wenn Sie den Status Ihres Recrawl-Vorgangs überwachen und der Recrawl-Vorgang während des Polling der operations.get-Methode ein Zeitlimit überschreitet, gibt operations.get Fehlermeldungen für Webseiten zurück, die nicht gecrawlt wurden. In der folgenden Tabelle sind die Fehlermeldungen, die Angabe, ob der Fehler vorübergehend ist (ein temporärer Fehler, der sich von selbst behebt), und die Maßnahmen aufgeführt, die Sie ergreifen können, bevor Sie die Methode recrawlUris noch einmal versuchen. Sie können alle vorübergehenden Fehler sofort noch einmal versuchen. Alle nicht vorübergehenden Fehler können nach der Behebung noch einmal versucht werden.

Fehlermeldung Ist es ein vorübergehender Fehler? Maßnahme vor dem erneuten Crawlen
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 Methode recrawlUris aufrufen.
Crawling wurde durch die robots.txt der Website blockiert Nein Entfernen Sie die Blockierung des URI in der robots.txt-Datei Ihrer Website, sorgen Sie dafür, dass der Googlebot-User-Agent die Website crawlen darf, und versuchen Sie es noch einmal. Weitere Informationen finden Sie hier. Wenn Sie nicht auf die Datei robots.txt zugreifen können, wenden Sie sich an den Domaininhaber.
Seite ist nicht erreichbar Nein Prüfen Sie den URI, den Sie beim Aufrufen der Methode recrawlUris angegeben haben. Achten Sie darauf, dass Sie den Literal-URI und nicht ein URI-Muster angeben.
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 Methode recrawlUris 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 Methode recrawlUris aufrufen.
Google-Crawler konnte der URL nicht folgen Nein Wenn es mehrere Weiterleitungen gibt, verwenden Sie den URI aus 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. Achten Sie darauf, dass Sie den Literal-URI und nicht ein URI-Muster angeben.

Jede Seite, die mit einem `4xx`-Fehlercode antwortet, wird aus dem Index entfernt.

Für die Seite ist eine Authentifizierung erforderlich Nein Bei der erweiterten Websiteindexierung werden keine Webseiten gecrawlt, 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 Website-Datenspeicher während einer automatischen oder manuellen Aktualisierung gecrawlt wird und eine Webseite mit dem Clientfehlercode 4xx oder dem Serverfehlercode 5xx antwortet, wird die nicht reagierende Webseite aus dem Index entfernt.