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 no mapa do site, consulte o artigo Indexe e atualize de acordo com o mapa do site.
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 volta a rastrear 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 da loja 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 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
arquivo 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 da loja 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 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
na sua nova chamada 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 repetir
todos os erros temporários imediatamente. Pode tentar novamente todos os erros não transitórios depois de implementar a soluçã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 que não responde é removida do índice.