

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
<a name="kb-managed-ds-webcrawler"></a>

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.](https://www.rfc-editor.org/rfc/rfc9309.html)

**Importante**  
Ao selecionar sites para rastrear, você deve aderir à [Política de Uso Aceitável da Amazon](https://aws.amazon.com/aup/) 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
<a name="kb-managed-supported-features-webcrawler"></a>
+ 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
<a name="kb-managed-webcrawler-auth-methods"></a>

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
<a name="kb-managed-prereqs-webcrawler"></a>

**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](https://docs.aws.amazon.com/secretsmanager/latest/userguide/create_secret.html) e anote seu Amazon Resource Name (ARN). Para obter os pares exatos de valores-chave, consulte. [Credenciais de autenticação](#kb-managed-webcrawler-credentials)
+ 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, consulte[Permissões para acessar as fontes de dados](kb-permissions.md#kb-permissions-access-ds).

## Como configurar uma fonte de dados do Web Crawler
<a name="kb-managed-webcrawler-workflow"></a>

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](#kb-managed-webcrawler-credentials).

1. **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](#kb-managed-ds-webcrawler-create).

## Crie a fonte de dados
<a name="kb-managed-ds-webcrawler-create"></a>

------
#### [ 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.

1. Selecione **Web Crawler na lista suspensa** da fonte de dados.

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

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

1. 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.

1. **(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).**

1. (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 [CreateDataSource](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_agent_CreateDataSource.html)solicitaçã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` `FORM``SAML`, 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 name="kb-managed-config-webcrawler"></a>

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` e`mediaExtractionConfiguration`), consulte[Conectar uma fonte de dados](kb-managed-connect-ds.md).


**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](#kb-managed-webcrawler-auth-methods). | 
| 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
<a name="kb-managed-webcrawler-credentials"></a>

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
<a name="kb-managed-ds-webcrawler-troubleshooting"></a>


**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. | 