Se o seu arquivo de dados usar a pesquisa básica de Websites, a atualização do índice da sua loja reflete a atualização disponível na Pesquisa Google.
Se a indexação avançada de Websites estiver ativada no seu repositório de dados, as páginas Web no seu repositório de dados são atualizadas das seguintes formas:
- Atualização automática
- Atualização manual
- Atualização baseada no mapa do site
Esta página descreve a atualização automática e manual. Para compreender e implementar a atualização baseada em sitemap, consulte o artigo Indexe e atualize de acordo com o sitemap.
Antes de começar
Se usar o ficheiro robots.txt
no seu Website, atualize-o. Para mais
informações, veja como
preparar o ficheiro robots.txt
do Website.
Atualização automática
O Vertex AI Search faz a atualização automática da seguinte forma:
- Depois de criar um arquivo de dados, este gera um índice inicial para as páginas incluídas.
- Após a indexação inicial, indexa todas as páginas descobertas recentemente e rastreia novamente as páginas existentes com base no melhor esforço possível.
- Atualiza regularmente os armazenamentos de dados que encontram uma taxa de consulta de 50 consultas/30 dias.
Atualização manual
Se quiser atualizar páginas Web específicas num arquivo de dados com a indexação avançada de Websites ativada, pode chamar o método recrawlUris
. Use o campo uris
para especificar cada página Web que quer rastrear. O método recrawlUris
é uma operação de longa duração que é executada até que as páginas Web especificadas sejam
rastreadas ou até que ocorra um limite de tempo após 24 horas, consoante o que ocorrer primeiro. Se o método
recrawlUris
expirar, pode chamar o método novamente, especificando as páginas Web
que ainda têm de ser rastreadas. Pode sondar o método operations.get
para monitorizar o estado da sua operação de nova rastreagem.
Limites no novo rastreio
Existem limites para a frequência com que pode rastrear páginas Web e o número de páginas Web que pode rastrear de cada vez:
- Chamadas por dia. O número máximo de chamadas para o método
recrawlUris
permitido é de 20 por dia, por projeto. - Páginas Web por chamada. O número máximo de valores de
uris
que pode especificar com uma chamada ao métodorecrawlUris
é 10 000.
Volte a rastrear as páginas Web na sua base de dados
Pode rastrear manualmente páginas Web específicas num arquivo de dados com a opção Indexação avançada de Websites ativada.
REST
Para usar a linha de comandos para rastrear páginas Web específicas no seu repositório de dados, siga estes passos:
Encontre o ID da loja de dados. Se já tiver o ID do armazenamento de dados, avance para o passo seguinte.
Na Google Cloud consola, aceda à página Aplicações de IA e, no menu de navegação, clique em Armazenamentos de dados.
Clique no nome do seu arquivo de dados.
Na página Dados da sua loja de dados, obtenha o ID da loja de dados.
Chame o método
recrawlUris
, usando o campouris
para especificar cada página Web que quer rastrear. Cadauri
representa uma única página, mesmo que contenha asteriscos (*
). Os padrões com carateres universais não são suportados.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] }'
Substitua o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .DATA_STORE_ID
: o ID do arquivo de dados do Vertex AI Search.URIS
: a lista de páginas Web que quer rastrear. Por exemplo,"https://example.com/page-1", "https://example.com/page-2", "https://example.com/page-3"
.
O resultado é semelhante ao seguinte:
{ "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" } }
Guarde o valor de
name
como entrada para a operaçãooperations.get
quando monitorizar o estado da operação de nova indexação.
Monitorize o estado da operação de nova indexação
O método recrawlUris
, que usa para rastrear páginas Web num
repositório de dados, é uma operação de execução prolongada que é executada até que as páginas Web especificadas sejam rastreadas
ou até que ocorra um limite de tempo após 24 horas, consoante o que ocorrer primeiro. Pode monitorizar o estado desta operação de longa duração consultando o método operations.get
, especificando o valor name
devolvido pelo método recrawlUris
. Continue a sondar até que a resposta indique que:
(1) Todas as suas páginas Web foram rastreadas ou (2) O tempo limite da operação expirou antes de todas as suas páginas Web terem sido rastreadas. Se recrawlUris
expirar, pode chamá-lo novamente, especificando os Websites que não foram rastreados.
REST
Para usar a linha de comandos para monitorizar o estado de uma operação de nova rastreagem, siga estes passos:
Encontre o ID da loja de dados. Se já tiver o ID do armazenamento de dados, avance para o passo seguinte.
Na Google Cloud consola, aceda à página Aplicações de IA e, no menu de navegação, clique em Armazenamentos de dados.
Clique no nome do seu arquivo de dados.
Na página Dados da sua loja de dados, obtenha o ID da loja de dados.
Sondar o 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"
Substitua o seguinte:
PROJECT_ID
: o ID do seu projeto Google Cloud .OPERATION_NAME
: o nome da operação, encontrado no camponame
devolvido na sua chamada ao métodorecrawlUris
em Volte a rastrear as páginas Web no seu repositório de dados. Também pode obter o nome da operação listando as operações de longa duração.
Avalie cada resposta.
Se uma resposta indicar que existem URIs pendentes e a operação de nova indexação não estiver concluída, as suas páginas Web ainda estão a ser rastreadas. Continuar a sondar.
Exemplo
{ "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", } }
Os campos de resposta podem ser descritos da seguinte forma:
createTime
: indica a hora em que a operação de longa duração foi iniciada.updateTime
: indica a última vez que os metadados da operação de longa duração foram atualizados. Indica que os metadados são atualizados a cada cinco minutos até a operação estar concluída.validUrisCount
: indica que especificou 4000 URIs válidos na sua chamada ao métodorecrawlUris
.successCount
: indica que 2215 URIs foram rastreados com êxito.pendingCount
: indica que 1785 URIs ainda não foram rastreados.done
: um valor defalse
indica que a operação de nova indexação ainda está em curso.
Se uma resposta indicar que não existem URIs pendentes (não é devolvido nenhum campo
pendingCount
) e a operação de novo rastreio estiver concluída, as suas páginas Web são rastreadas. Parar a sondagem: pode terminar este procedimento.Exemplo
{ "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" } }
Os campos de resposta podem ser descritos da seguinte forma:
createTime
: indica a hora em que a operação de longa duração foi iniciada.updateTime
: indica a última vez que os metadados da operação de longa duração foram atualizados. Indica que os metadados são atualizados a cada cinco minutos até a operação estar concluída.validUrisCount
: indica que especificou 4000 URIs válidos na sua chamada ao métodorecrawlUris
.successCount
: indica que 4000 URIs foram rastreados com êxito.done
: um valor detrue
indica que a operação de nova rastreagem está concluída.
Se uma resposta indicar que existem URIs pendentes e a operação de nova rastreagem estiver concluída, significa que a operação de nova rastreagem excedeu o limite de tempo (após 24 horas) antes de todas as suas páginas Web terem sido rastreadas. Comece novamente em Volte a rastrear as páginas Web na sua base de dados. Use os
failedUris
valores na respostaoperations.get
para os valores no campouris
no seu novo pedido ao métodorecrawlUris
.Exemplo.
{ "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." } ] } ] } }
Seguem-se algumas descrições dos campos de resposta:
createTime
. A hora em que a operação de longa duração foi iniciada.updateTime
. A última vez que os metadados da operação de longa duração foram atualizados. Os metadados são atualizados a cada cinco minutos até a operação estar concluída.validUrisCount
. Indica que especificou 10 000 URIs válidos na sua chamada ao métodorecrawlUris
.successCount
. Indica que 9988 URIs foram rastreados com êxito.pendingCount
. Indica que 12 URIs ainda não foram rastreados.done
. Um valor detrue
indica que a operação de nova indexação está concluída.failedUris
. Uma lista de URIs que não foram rastreados antes de o tempo limite da operação de novo rastreio expirar.failureInfo
. Informações sobre URIs nos quais ocorreu uma falha na rastreio. No máximo, são devolvidos dez valores de matrizfailureInfo
, mesmo que mais de dez URIs não tenham sido rastreados.errorMessage
. O motivo pelo qual um URI não foi rastreado, porcorpusType
. Para mais informações, consulte Mensagens de erro.
Atualização oportuna
A Google recomenda que faça uma atualização manual das páginas novas e atualizadas para garantir que tem o índice mais recente.
Mensagens de erro
Quando monitoriza o estado da operação de nova rastreagem, se a operação de nova rastreagem expirar enquanto consulta o método operations.get
, operations.get
devolve mensagens de erro para as páginas Web que não foram rastreadas. A tabela seguinte apresenta as mensagens de erro, se o erro é transitório (um erro temporário que se resolve sozinho) e as ações que pode realizar antes de tentar novamente o método recrawlUris
. Pode tentar novamente
todos os erros temporários imediatamente. Pode tentar novamente todos os erros não transitórios depois de implementar a correção.
Mensagem de erro | É um erro temporário? | Ação antes de tentar voltar a rastrear |
---|---|---|
A página foi rastreada, mas não foi indexada pelo Vertex AI Search no prazo de 24 horas | Sim | Use os valores failedUris na resposta operations.get para os valores no campo uris quando chamar o método recrawlUris . |
O rastreio foi bloqueado pelo robots.txt do site |
Não | Desbloqueie o URI no ficheiro robots.txt do seu Website, certifique-se de que o agente do utilizador Googlebot tem autorização para rastrear o Website e tente rastrear novamente. Para mais informações, consulte o artigo
Como escrever e enviar um ficheiro robots.txt.
Se não conseguir aceder ao ficheiro robots.txt , contacte o proprietário do domínio. |
Página inacessível | Não | Verifique o URI que especificou quando chama o método recrawlUris . Certifique-se de que fornece o URI literal e não um padrão de URI. |
O rastreio excedeu o tempo limite | Sim | Use os valores failedUris na resposta operations.get para os valores no campo uris quando chamar o método recrawlUris . |
A página foi rejeitada pelo motor de rastreio do Google | Sim | Use os valores failedUris na resposta operations.get para os valores no campo uris quando chamar o método recrawlUris . |
O URL não pôde ser seguido pelo motor de rastreio do Google | Não | Se existirem vários redirecionamentos, use o URI do último redirecionamento e tente novamente |
Página não encontrada (404) | Não | Verifique o URI que especificou quando chama o método recrawlUris . Certifique-se de que fornece o URI literal e não um padrão de URI.
Qualquer página que responda com um código de erro `4xx` é removida do índice. |
A página requer autenticação | Não | A indexação avançada de Websites não suporta a indexação de páginas Web que requerem autenticação. |
Como são processadas as páginas eliminadas
Quando uma página é eliminada, a Google recomenda que atualize manualmente os URLs eliminados.
Quando a sua loja de dados do Website é rastreada durante uma atualização automática ou manual, se uma página Web responder com um código de 4xx
erro do cliente ou um código de 5xx
erro do servidor, a página Web sem resposta é removida do índice.