Si tu almacén de datos usa la búsqueda básica de sitios web, la actualización del índice de tu tienda replica la que está disponible en la Búsqueda de Google.
Si la indexación de sitios web avanzada está habilitada en tu almacén de datos, las páginas web que se encuentren allí se actualizarán de las siguientes maneras:
- Actualización automática
- Actualización manual
- Actualización basada en el mapa del sitio
En esta página, se describe la actualización automática y manual. Para comprender y, luego, implementar la actualización basada en el mapa del sitio, consulta Cómo indexar y actualizar según el mapa del sitio.
Actualización automática
Vertex AI Search realiza la actualización automática de la siguiente manera:
- Después de crear un almacén de datos, genera un índice inicial para las páginas incluidas.
- Luego, indexa las páginas descubiertas recientemente y vuelve a rastrear las páginas existentes según el criterio del mejor esfuerzo.
- Actualiza regularmente los almacenes de datos que presentan una tasa de 50 búsquedas por 30 días.
Actualización manual
Si deseas actualizar páginas web específicas en un almacén de datos con la indexación avanzada de sitios web activada, puedes llamar al método recrawlUris
. Usa el campo uris
para especificar cada página web que deseas rastrear. El método recrawlUris
es una operación de larga duración que se ejecuta hasta que se rastrean las páginas web especificadas o hasta que se agota el tiempo de espera después de 24 horas, lo que ocurra primero. Si se agota el tiempo de espera del método recrawlUris
, puedes volver a llamarlo y especificar las páginas web que aún quedan por rastrear. Puedes sondear el método operations.get
para supervisar el estado de tu operación de rastreo nuevo.
Límites para el rastreo nuevo
Existen límites para la frecuencia con la que puedes rastrear páginas web y la cantidad de páginas web que puedes rastrear a la vez:
- Llamadas por día. La cantidad máxima de llamadas al método
recrawlUris
permitida es de cinco por día y por proyecto. - Páginas web por llamada. La cantidad máxima de valores
uris
que puedes especificar con una llamada al métodorecrawlUris
es de 10,000.
Vuelve a rastrear las páginas web de tu almacén de datos
Puedes rastrear manualmente páginas web específicas en un almacén de datos que tenga activada la indexación avanzada de sitios web.
REST
Para usar la línea de comandos y rastrear páginas web específicas en tu almacén de datos, sigue estos pasos:
Busca el ID de tu almacén de datos. Si ya tienes el ID del almacén de datos, ve al siguiente paso.
En la consola de Google Cloud, ve a la página Agent Builder y, en el menú de navegación, haz clic en Almacenes de datos.
Haz clic en el nombre de tu almacén de datos.
En la página Datos de tu almacén de datos, obtén el ID del almacén de datos.
Llama al método
recrawlUris
y usa el campouris
para especificar cada página web que deseas rastrear. Cadauri
representa una sola página, incluso si contiene asteriscos (*
). No se admiten patrones de comodines.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] }'
Reemplaza lo siguiente:
PROJECT_ID
: El ID del proyecto de Google Cloud.DATA_STORE_ID
: el ID del almacén de datos de Vertex AI Search.URIS
: Es la lista de páginas web que deseas rastrear, por ejemplo,"https://example.com/page-1", "https://example.com/page-2", "https://example.com/page-3"
.
El resultado es similar a este:
{ "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" } }
Guarda el valor de
name
como entrada para la operaciónoperations.get
cuando supervises el estado de tu operación de rastreo nuevo.
Supervisa el estado de tu operación de rastreo nuevo
El método recrawlUris
, que usas para explorar páginas web en un almacén de datos, es una operación de larga duración que se ejecuta hasta que se exploran las páginas web especificadas o hasta que se agota el tiempo de espera después de 24 horas, lo que ocurra primero. Puedes supervisar el estado de esta operación de larga duración mediante un sondeo del método operations.get
y especificando el valor name
que muestra el método recrawlUris
. Continúa realizando consultas hasta que la respuesta indique lo siguiente: (1) Se rastrearon todas tus páginas web o (2) Se agotó el tiempo de espera de la operación antes de que se rastrearan todas tus páginas web. Si se agota el tiempo de espera de recrawlUris
, puedes volver a llamarlo y especificar los sitios web que no se rastrearon.
REST
Para usar la línea de comandos y supervisar el estado de una operación de rastreo nuevo, sigue estos pasos:
Busca el ID de tu almacén de datos. Si ya tienes el ID del almacén de datos, ve al siguiente paso.
En la consola de Google Cloud, ve a la página Agent Builder y, en el menú de navegación, haz clic en Almacenes de datos.
Haz clic en el nombre de tu almacén de datos.
En la página Datos de tu almacén de datos, obtén el ID del almacén de datos.
Consulta el método
operations.get
.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"
Reemplaza lo siguiente:
PROJECT_ID
: El ID del proyecto de Google Cloud.OPERATION_NAME
: Es el nombre de la operación que se encuentra en el camponame
que se muestra en la llamada al métodorecrawlUris
en Cómo volver a rastrear las páginas web en tu almacén de datos. También puedes obtener el nombre de la operación si enumeras las operaciones de larga duración.
Evalúa cada respuesta.
Si una respuesta indica que hay URIs pendientes y no se realizó la operación de rastreo nuevamente, significa que tus páginas web aún se están rastreando. Continúa con la sondeo.
Ejemplo
{ "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", } }
Los campos de respuesta se pueden describir de la siguiente manera:
createTime
: Indica la hora en que se inició la operación de larga duración.updateTime
: Indica la última vez que se actualizaron los metadatos de la operación de larga duración. Indica que los metadatos se actualizan cada cinco minutos hasta que se completa la operación.validUrisCount
: Indica que especificaste 4,000 URIs válidos en tu llamada al métodorecrawlUris
.successCount
: Indica que se rastrearon correctamente 2,215 URIs.pendingCount
: Indica que aún no se rastrearon 1,785 URIs.done
: Un valor defalse
indica que la operación de rastreo nuevo aún está en proceso.
Si una respuesta indica que no hay URIs pendientes (no se muestra ningún campo
pendingCount
) y se completó la operación de rastreo nuevo, se rastrean tus páginas web. Detén el sondeo. Puedes salir de este procedimiento.Ejemplo
{ "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" } }
Los campos de respuesta se pueden describir de la siguiente manera:
createTime
: Indica la hora en que se inició la operación de larga duración.updateTime
: Indica la última vez que se actualizaron los metadatos de la operación de larga duración. Indica que los metadatos se actualizan cada cinco minutos hasta que se completa la operación.validUrisCount
: Indica que especificaste 4,000 URIs válidos en tu llamada al métodorecrawlUris
.successCount
: Indica que se rastrearon correctamente 4,000 URIs.done
: Un valor detrue
indica que se completó la operación de rastreo nuevo.
Si una respuesta indica que hay URIs pendientes y que se completó la operación de rastreo nuevo, significa que se agotó el tiempo de espera de la operación de rastreo nuevo (después de 24 horas) antes de que se rastrearan todas tus páginas web. Vuelve a empezar en Cómo volver a rastrear las páginas web en tu almacén de datos. Usa los valores
failedUris
de la respuestaoperations.get
para los valores del campouris
en tu nueva llamada al métodorecrawlUris
.Ejemplo.
{ "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." } ] } ] } }
Estas son algunas descripciones de los campos de respuesta:
createTime
: Es la hora en que se inició la operación de larga duración.updateTime
: Es la última vez que se actualizaron los metadatos de la operación de larga duración. Los metadatos se actualizan cada cinco minutos hasta que se completa la operación.validUrisCount
: Indica que especificaste 10,000 URIs válidos en tu llamada al métodorecrawlUris
.successCount
. Indica que se rastrearon correctamente 9,988 URIs.pendingCount
: Indica que aún no se rastrearon 12 URIs.done
. Un valor detrue
indica que se completó la operación de rastreo nuevo.failedUris
: Es una lista de URIs que no se rastrearon antes de que se agote el tiempo de espera de la operación de rastreo.failureInfo
: Información sobre los URIs que no se pudieron rastrear. Como máximo, se muestran diez valores de arrayfailureInfo
, incluso si no se rastrean más de diez URIs.errorMessage
. El motivo por el que no se pudo rastrear un URI, segúncorpusType
. Para obtener más información, consulta Mensajes de error.
Actualización oportuna
Google recomienda que realices una actualización manual en tus páginas nuevas y actualizadas para asegurarte de tener el índice más reciente.
Mensajes de error
Cuando supervisas el estado de la operación de rastreo nuevo, si esta operación agota el tiempo de espera mientras sondeas el método operations.get
, operations.get
muestra mensajes de error para las páginas web que no se rastrearon. En la siguiente tabla, se enumeran los mensajes de error, si el error es transitorio (un error temporal que se resuelve por sí solo) y las acciones que puedes realizar antes de volver a intentar el método recrawlUris
. Puedes volver a intentar
todos los errores transitorios de inmediato. Todos los errores transitorios se pueden volver a intentar después de implementar la solución.
Mensaje de error | ¿Es un error transitorio? | Acción antes de volver a intentar el rastreo |
---|---|---|
Se rastreó la página, pero Vertex AI Search no la indexó en un plazo de 24 horas | Sí | Usa los valores failedUris en la respuesta operations.get para los valores del campo uris cuando llames al método recrawlUris . |
El robots.txt del sitio bloqueó el rastreo |
No | Desbloquea el URI en el archivo robots.txt de tu sitio web, asegúrate de que el usuario-agente de Googlebot pueda rastrear el sitio web y vuelve a intentar el rastreo. Para obtener más información, consulta Cómo escribir y enviar un archivo robots.txt.
Si no puedes acceder al archivo robots.txt , comunícate con el propietario del dominio. |
No se puede acceder a la página | No | Verifica el URI que especificaste cuando llamaste al método recrawlUris . Asegúrate de proporcionar el URI literal y no un patrón de URI. |
Se agotó el tiempo de espera del rastreo | Sí | Usa los valores failedUris en la respuesta operations.get para los valores del campo uris cuando llames al método recrawlUris . |
El rastreador de Google rechazó la página | Sí | Usa los valores failedUris en la respuesta operations.get para los valores del campo uris cuando llames al método recrawlUris . |
El rastreador de Google no pudo seguir la URL | No | Si hay varios redireccionamientos, usa el URI del último redireccionamiento y vuelve a intentarlo. |
No se encontró la página (404) | No | Verifica el URI que especificaste cuando llamaste al método recrawlUris . Asegúrate de proporcionar el URI literal y no un patrón de URI.
Cualquier página que responda con un código de error "4xx" se quitará del índice. |
La página requiere autenticación | No | La indexación avanzada de sitios web no admite el rastreo de páginas web que requieren autenticación. |
Cómo se manejan las páginas borradas
Cuando se borra una página, Google recomienda que actualices manualmente las URLs borradas.
Cuando se rastrea el almacén de datos de tu sitio web durante una actualización automática
o manual, si una página web responde con un código de error de cliente 4xx
o un código de error de servidor 5xx
, la página web que no responde se quita del
índice.