View a markdown version of this page

Web Crawler - Amazon Bedrock

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

Web Crawler

O Web Crawler se conecta e rastreia os URLs que você especifica para uso em sua base de conhecimento gerenciada. O Web Crawler percorre páginas HTML a partir de seus URLs iniciais, seguindo links secundários de acordo com o escopo e os limites do rastreamento. Você também pode fornecer URLs de sitemaps como pontos de partida. O Web Crawler respeita o robots.txt de acordo com a RFC 9309.

Importante

Ao selecionar sites para rastrear, você deve aderir à Política de Uso Aceitável da Amazon e a todos os outros termos da Amazon. Use o Web Crawler somente para indexar suas próprias páginas da Web ou páginas da Web que você tenha autorização para rastrear.

nota

O Web Crawler não oferece suporte ao controle de acesso (ACLs) em nível de documento. Todo o conteúdo indexado pode ser acessado por qualquer usuário que tenha acesso à base de conhecimento. Se você precisar de filtragem de ACL, use um conector que a suporte (por exemplo, Amazon S3 SharePoint ou). OneDrive

Recursos compatíveis

  • Rastreie vários URLs iniciais e URLs de sitemaps

  • Profundidade de rastreamento, limite de taxa e limite de links por URL configuráveis

  • Controle do escopo de rastreamento: mesmo host e caminho, somente host ou host e subdomínios

  • Filtros de padrão de URL (expressões regulares de inclusão e exclusão)

  • Rastreie anexos vinculados de páginas da Web (PDFs, documentos etc.)

  • Autenticação para sites protegidos: básica, baseada em formulários ou SAML

  • Sincronizações incrementais de conteúdo para conteúdo adicionado, atualizado e excluído

Métodos de autenticação

O Web Crawler suporta quatro métodos de autenticação. Escolha o método que corresponde à forma como o site de destino autentica os usuários. Para sites públicos sem login, use. NO_AUTH

Métodos de autenticação do Web Crawler
Método Como ele se autentica Quando usar
Sem autenticação (NO_AUTH) O rastreador envia solicitações sem credenciais. Sites públicos que não exigem login.
Autenticação básica (BASIC_AUTH) O rastreador envia um Authorization: Basic cabeçalho HTTP com um nome de usuário e senha do seu segredo. Sites protegidos pela Autenticação Básica HTTP (a caixa de diálogo de nome de usuário e senha no estilo do navegador).
Autenticação de formulário (FORM) O rastreador faz login enviando um formulário em HTML. Você fornece o URL de login, as credenciais e as expressões XPath que localizam os campos do formulário. Sites que usam um formulário HTML para fazer login.
Autenticação SAML () SAML O rastreador faz login por meio do formulário de login do provedor de identidade SAML. Você fornece a URL de login do IdP, as credenciais e as expressões XPath que localizam os campos do formulário. Sites que usam login SAML-based único.

Pré-requisitos

Para o site que você deseja rastrear, certifique-se de:

  • Tenha permissão para rastrear o site e seu conteúdo.

  • Confirme se robots.txt o site não proíbe os URLs que você deseja rastrear. O Web Crawler usa como padrão não permitir se um robots.txt arquivo não for encontrado.

  • Se o site exigir login, identifique o método de autenticação (básico, formulário ou SAML). Para formulário e SAML, localize as expressões XPath para o campo de nome de usuário, campo de senha e botão de envio na página de login. Para encontrar um XPath, clique com o botão direito do mouse no elemento do formulário em seu navegador e escolha Inspecionar e, em seguida, copie o XPath das ferramentas do desenvolvedor.

Em sua AWS conta, certifique-se de:

  • Se seu site exigir autenticação, armazene suas credenciais em AWS Secrets Manager segredo e anote seu Amazon Resource Name (ARN). Para obter os pares exatos de valores-chave, consulte. Credenciais de autenticação

  • Inclua as permissões necessárias para se conectar à sua fonte de dados na role/permissions política AWS Identity and Access Management (IAM) da sua base de conhecimento. Para obter informações sobre as permissões necessárias, consultePermissões para acessar as fontes de dados.

Como configurar uma fonte de dados do Web Crawler

A configuração de uma fonte de dados do Web Crawler envolve as seguintes etapas:

  1. (Se seu site exigir login) Prepare as credenciais. Armazene as credenciais do seu método de autenticação em AWS Secrets Manager segredo. Consulte Credenciais de autenticação.

  2. Conecte a fonte de dados. Crie a fonte de dados do Web Crawler na base de conhecimento usando a Console de gerenciamento da AWS ou a API. Consulte Crie a fonte de dados.

Crie a fonte de dados

Console
Para conectar o Web Crawler à sua base de conhecimento gerenciada
  1. Em Fonte de dados, forneça um nome para sua fonte de dados.

  2. Selecione Web Crawler na lista suspensa da fonte de dados.

  3. Em Fonte, escolha URLs de origem (até 10 URLs de ponto de partida) ou Sitemaps de origem (até 3 URLs de sitemap).

  4. Insira seus URLs na área de texto Adicionar URLs, um por linha.

  5. Em Autenticação, selecione Sem autenticação, Autenticação básica, Autenticação de formulário ou Autenticação SAML. Para qualquer método diferente de Sem autenticação, selecione ou crie um AWS Secrets Manager segredo para armazenar suas credenciais.

  6. (Opcional) Expanda o escopo de sincronização para definir a profundidade do rastreamento (0 a 10), o máximo de links por URL (1 a 1000), o máximo de URLs rastreados por minuto (1 a 300) e o escopo do rastreamento: padrão (mesmo host e mesmo caminho de URL inicial do URL inicial), somente host (mesmo host, qualquer caminho) ou subdomínios (mesmo domínio primário, incluindo subdomínios).

  7. (Opcional) Expanda os padrões de filtro de URL para adicionar expressões regulares que incluam ou excluam URLs específicos.

API

Para criar uma fonte de dados do Web Crawler, envie uma CreateDataSourcesolicitação com um endpoint de tempo de construção do Agents for Amazon Bedrock. O AWS Command Line Interface exemplo a seguir cria uma fonte de dados que rastreia um site público sem autenticação. Para obter uma descrição de cada campo, consulte a referência de parâmetros do conector a seguir.

aws bedrock-agent create-data-source \ --name "WebCrawler-connector" \ --knowledge-base-id "your-knowledge-base-id" \ --data-source-configuration file://webcrawler-managed-connector.json

O webcrawler-managed-connector.json arquivo contém o seguinte:

{ "type": "MANAGED_KNOWLEDGE_BASE_CONNECTOR", "managedKnowledgeBaseConnectorConfiguration": { "connectorParameters": { "type": "WEB", "version": "1", "connectionConfiguration": { "seedUrls": [ "https://docs.example.com" ], "authType": "NO_AUTH" }, "crawlConfiguration": { "crawlDepth": 3, "maxLinksPerUrl": 100, "maxCrawledUrlsPerMinute": 50, "syncScope": "SUB_DOMAINS", "crawlAttachments": true }, "filterConfiguration": { "exclusionPatterns": [ "https://docs.example.com/private/.*" ] } } } }

Para um site autenticado, authType defina como BASIC_AUTH FORMSAML, ou e adicione um secretArn a. connectionConfiguration

Para bases de conhecimento gerenciadas, CreateDataSource é assíncrono: o status da fonte de dados muda de CREATING para AVAILABLE quando a operação é concluída.

Parâmetros do conector

A configuração da fonte de dados usa os seguintes parâmetros do conector. Para usar o Web Crawler, especifique WEB como tipo de conector. connectorParameters Para os campos que são agrupados connectorParameters (como deletionProtectionConfiguration emediaExtractionConfiguration), consulteConectar uma fonte de dados.

connectionConfiguration
Campo Obrigatório Description
seedUrls Condicional Lista de URLs iniciais a partir dos quais começar a rastrear. Máximo de 10. Obrigatório, a menos que você forneçasiteMapUrls.
siteMapUrls Condicional Lista de URLs do sitemap. Máximo de 3. Obrigatório, a menos que você forneçaseedUrls.
authType Sim O tipo de autenticação:NO_AUTH,BASIC_AUTH,FORM, ouSAML. Consulte Métodos de autenticação.
secretArn Condicional O ARN do AWS Secrets Manager segredo que contém suas credenciais. Obrigatório quando não authType éNO_AUTH.
Configuração de rastreamento (opcional)
Campo Obrigatório Description
crawlDepth Não Profundidade máxima de rastreamento. Intervalo de 0 a 10. 0rastreia somente os URLs especificados; valores mais altos seguem links mais profundos no site. O padrão é 2.
maxLinksPerUrl Não Máximo de links a serem seguidos por URL. Intervalo de 1 a 1000. O padrão é 100.
maxCrawledUrlsPerMinute Não Máximo de URLs rastreados por minuto (limite de taxa). Intervalo de 1 a 300.
implicitWaitInSeconds Não Tempo de espera, em segundos, após uma página atingir um estado pronto antes que o rastreador a leia. Aumente isso para páginas com JavaScript conteúdo dinâmico que é carregado após o modelo principal.
syncScope Não O escopo dos links a seguir. Um dos PATH_SPECIFIC (mesmo host e mesmo caminho de URL inicial do URL inicial), DOMAINS_ONLY (mesmo host do URL inicial, qualquer caminho) ou SUB_DOMAINS (mesmo domínio primário, incluindo subdomínios). Quando omitido, o rastreador rastreia somente o mesmo host e o mesmo caminho de URL inicial do URL inicial.
crawlAttachments Não Se deve rastrear arquivos e anexos vinculados a páginas da Web (como PDFs e outros documentos).
Configuração do filtro (opcional)
Campo Obrigatório Description
inclusionPatterns Não Lista de expressões regulares. Somente URLs que correspondam a pelo menos um padrão são rastreados e indexados.
exclusionPatterns Não Lista de expressões regulares. Os URLs que correspondem a qualquer padrão não são rastreados nem indexados.
maxFileSizeInMegaBytes Não Tamanho máximo, em megabytes, de qualquer arquivo que o rastreador ingere. Forneça como uma string numérica (por exemplo,"500"). O padrão é "500".

Credenciais de autenticação

Se o seu site exigir autenticação, armazene suas credenciais em AWS Secrets Manager segredo. O formato secreto depende do tipo de autenticação escolhido.

Autenticação básica (BASIC_AUTH)

{ "userName": "your-username", "password": "your-password", "authentication": "BASIC_AUTH" }

Autenticação de formulário (FORM)

Para autenticação baseada em formulário, forneça expressões XPath que identifiquem o campo de nome de usuário, campo de senha e botão de envio na página de login.

{ "authentication": "FORM", "loginPageUrl": "https://example.com/login", "userName": "your-username", "password": "your-password", "userNameFieldXpath": "//input[@name='username']", "passwordFieldXpath": "//input[@name='password']", "userNameButtonXpath": "//button[@type='submit']", "passwordButtonXpath": "//button[@type='submit']" }

Autenticação SAML () SAML

Para a autenticação SAML, forneça a URL da página de login do provedor de identidade SAML e as expressões XPath para os campos do formulário.

{ "authentication": "SAML", "loginPageUrl": "https://your-idp.example.com/login", "userName": "your-username", "password": "your-password", "userNameFieldXpath": "//input[@name='username']", "passwordFieldXpath": "//input[@name='password']", "userNameButtonXpath": "//button[@type='submit']", "passwordButtonXpath": "//button[@type='submit']" }
nota

Para encontrar um XPath no seu navegador, clique com o botão direito do mouse no elemento do formulário na página de login e escolha Inspecionar. Nas ferramentas do desenvolvedor, clique com o botão direito do mouse no HTML destacado, escolha Copiar e escolha Copiar XPath.

Solução de problemas

Problemas, causas e correções comuns do Web Crawler
Sintomas Causa provável Correção
A sincronização foi concluída com êxito, mas somente o URL inicial é indexado. Os links de navegação do site são conectados por meio de manipuladores de JavaScript eventos (clique, rolagem, menus dinâmicos) em vez de elementos padrão<a href="...">. O rastreador renderiza, JavaScript mas não simula as interações do usuário, portanto, não consegue descobrir esses links. Forneça URLs iniciais adicionais para as páginas que você deseja rastrear ou forneça uma URL de sitemap que liste todas as URLs a serem rastreadas. Se o conteúdo puder ser exportado como arquivos, considere usar o conector Amazon S3 em vez disso.
A sincronização não retorna nenhum conteúdo ou retorna menos páginas do que o esperado. O robots.txt arquivo do site não permite os URLs que você deseja rastrear, ou as páginas têm uma meta tag. noindex Atualize robots.txt para o host para que ele permita que os caminhos que você deseja rastrear ou remova a noindex metatag das páginas que você deseja indexar. Não bloqueie a página robots.txt se você também quiser detectar metatags, pois o rastreador precisa acessar a página para ler as metatags.
Falha na autenticação (HTTP 401 ou 403, loop de redirecionamento de login ou tempo limite da sessão). As credenciais estão incorretas ou expiraram, ou as expressões XPath não correspondem aos elementos da página de login. Verifique as credenciais em seu segredo. Para FORM nossa SAML autenticação, valide cada XPath nas ferramentas de desenvolvedor do seu navegador e verifique. loginPageUrl
A sincronização falha com limitação de taxa (HTTP 429) ou conteúdo incompleto. O rastreador está buscando páginas mais rápido do que o site permite. Reduza maxCrawledUrlsPerMinute ou aumente implicitWaitInSeconds para sites com conteúdo dinâmico que carrega depois que a página fica pronta.
Faltam páginas porque são maiores do que o esperado. A página ou o anexo excedemaxFileSizeInMegaBytes. Aumente maxFileSizeInMegaBytes ou aceite que arquivos maiores que o limite não sejam ingeridos.