# Páginas web para RAG: transforme sites em Markdown limpo e fácil de dividir em chunks

> Alimente pipelines de RAG com páginas web: rastreie documentação e blogs em Markdown limpo e mantenha as URLs. A partir de US$ 0,07/1K páginas.

- URL: https://webreaderapi.com/pt/use-cases/rag/
- Última atualização: 2026-10-22
- Editor: WebReaderAPI (https://webreaderapi.com)

A recuperação funciona com o que você coloca no índice. Markdown limpo com títulos, metadados e uma URL de origem gera chunks melhores, menos tokens desperdiçados e respostas que podem citar sua página.

**Resposta rápida — Como faço para ingerir páginas web em um pipeline de RAG?**

Leia cada página como Markdown do seu conteúdo principal, divida-a pelos seus títulos, anexe a URL de origem e o título a cada chunk e depois gere os embeddings e armazene. **WebReaderAPI** cuida da leitura: uma requisição por página, ou um job de rastreamento (crawl) para um site inteiro de até 10.000 páginas, a um crédito por página a partir de US$ 0,07/1K páginas em outubro de 2026. O robots.txt é respeitado. Sem KYC; pague com cripto.

## Ingestão de RAG com WebReaderAPI

| Atributo | Valor |
| --- | --- |
| Site inteiro | `POST https://webreaderapi.com/api/v1/crawl`: Rastreie um site por job, até 10.000 páginas, seguindo o sitemap, o robots.txt e o Crawl-delay do site |
| Lista de URLs | `POST https://webreaderapi.com/api/v1/batch`: Até 100 URLs por job em lote |
| Por página | Markdown do conteúdo principal, título, autor, data, idioma, contagem de palavras |
| PDFs | Arquivos PDF de até 20 MB e 100 páginas são convertidos em Markdown, a 1 crédito por bloco iniciado de 10 páginas |
| Cobrança | 1 crédito = 1 página lida sem navegador; 2 créditos quando a página precisa de um navegador para renderizar JavaScript. Uma requisição que falha, ou que o robots.txt de um site recusa, não é cobrada |
| Preço | US$ 14,25 por 50.000 páginas; os créditos nunca expiram |

## Por que o Markdown limpo melhora a recuperação?

Chunks feitos de boilerplate recuperam mal. Quando uma página é dividida com seus menus, texto de cookies e rodapé ainda nela, muitos chunks contêm as mesmas palavras de navegação, e a busca vetorial os retorna para perguntas não relacionadas. A extração do conteúdo principal remove esse ruído antes de você gerar os embeddings.

Os títulos importam tanto quanto. Um chunk que começa com `## Refund policy` carrega seu tópico consigo, então tanto o embedding quanto o modelo que o lê depois sabem sobre o que ele é. Texto simples perde esse sinal; HTML bruto o esconde sob a marcação.

## Como é um pipeline de ingestão?

Cinco etapas, qualquer que seja o vector store que você use:

1. **Colete as URLs.** Faça o crawl do site ou envie como lote a lista que você já tem.
2. **Leia como Markdown.** Mantenha `main_content=true` para artigos e docs; use `false` para páginas de listagem.
3. **Divida por heading.** Separe em `#`, `##` e `###`, depois corte as seções longas no seu limite de tamanho com uma pequena sobreposição.
4. **Anexe metadados.** Guarde `url`, `title`, `published_at` e o caminho de headings com cada chunk, para que as respostas possam citar a fonte.
5. **Atualize.** Releia as páginas cujo `lastmod` do sitemap mudou e exclua os chunks das páginas que agora retornam erro.

*Python: leia páginas e divida em chunks com a origem*

```python
import os
import re

import requests

API = "https://webreaderapi.com/api/v1/read"
HEADERS = {"Authorization": "Bearer " + os.environ["WEBREADER_API_KEY"]}
URLS = [
    "https://docs.example.com/getting-started",
    "https://docs.example.com/billing",
]


def chunks_for(url, max_len=2000):
    page = requests.get(API, headers=HEADERS, params={"url": url}, timeout=90).json()
    if "markdown" not in page:
        return []
    out = []
    for section in re.split(r"\n(?=#{1,3} )", page["markdown"]):
        section = section.strip()
        heading = section.splitlines()[0] if section else ""
        for start in range(0, len(section), max_len):
            out.append({
                "text": section[start:start + max_len],
                "url": page.get("final_url", url),
                "title": page.get("title"),
                "heading": heading,
            })
    return out


all_chunks = [c for u in URLS for c in chunks_for(u)]
print(len(all_chunks), "chunks ready to embed")

```

## Quanto custa construir e atualizar um índice?

Construir custa um crédito por página, dois para páginas que precisam de um navegador. Atualizar custa apenas as páginas que você relê. Três exemplos, com os preços de outubro de 2026:

- **A central de ajuda de um produto** com 800 páginas, atualizada mensalmente apenas nas páginas alteradas (cerca de 10%): 800 créditos uma vez, depois cerca de 80 por mês. 10.000 páginas (US$ 3,75) duram anos.
- **Dez sites de documentação** com 2.000 páginas cada, atualizados semanalmente a 5%: 20.000 créditos, depois cerca de 4.000 por mês. 50.000 páginas (US$ 14,25) cobrem a construção e sete meses de atualizações.
- **Um arquivo de notícias** com 300.000 artigos que nunca mudam: 300.000 créditos uma vez, que cabem em 500.000 páginas (US$ 50).

Embedding e armazenamento são cobrados pelos seus próprios provedores e não estão incluídos.

## Posso indexar sites que não querem ser indexados?

Não pelo WebReaderAPI. Páginas bloqueadas pelo robots.txt para o nosso crawler, ou para todos os robôs, são ignoradas e não são cobradas; sites que declaram `Content-Signal: ai-input=no` não são lidos para você. Para os seus próprios sites ou sites parceiros que bloqueiam robôs, peça ao proprietário para permitir `WebReaderAPI` no robots.txt; nossa [página do crawler](https://webreaderapi.com/pt/bot/) mostra as linhas a adicionar.

Isso importa para os seus usuários também. Um assistente RAG que cita fontes é mais útil quando essas fontes concordaram em ser lidas.

## Qual pack se encaixa em um projeto RAG?

Conte as páginas para construir o índice, some a atualização mensal e escolha o pack que cobre alguns meses. Os créditos nunca expiram.

| Plano | Quantidade | Preço | Preço por unidade |
| --- | --- | --- | --- |
| Testar | 10.000 páginas | US$ 3,75 | US$ 0,38/1K páginas |
| Starter | 50.000 páginas | US$ 14,25 | US$ 0,28/1K páginas |
| Build | 100.000 páginas | US$ 21,75 | US$ 0,22/1K páginas |
| Scale | 500.000 páginas | US$ 50 | US$ 0,10/1K páginas |

Em todos os planos: Extração do conteúdo principal · Renderização de JavaScript quando necessário · Páginas com falha e recusadas não são cobradas · Os créditos nunca expiram

**Antes de pagar**

- Recarga mínima US$ 25. Recarregue uma vez com cripto e depois compre qualquer plano usando seu saldo.
- Seu saldo não tem data de validade e pode comprar créditos de página a qualquer momento. Se um pacote custar menos que o valor mínimo de recarga, o valor que você adicionou apenas para atingir esse mínimo pode ser devolvido mediante solicitação em até 30 dias após o pagamento, em USDT ou USDC, desde que você não o tenha gasto. Qualquer outro saldo não é reembolsado, a menos que a lei determine o contrário.
- Creditado assim que seu pagamento é verificado na blockchain. Tempo habitual de confirmação da rede: BTC ≈ 20 min · USDT TRC-20 ≈ 1 min · USDT ERC-20 ≈ 5 min · USDC ERC-20 ≈ 5 min · ETH ≈ 5 min · SOL ≈ 1 min · LTC ≈ 15 min

## RAG ingestion: perguntas frequentes

### Qual tamanho de chunk devo usar?

Divida primeiro por headings e depois corte as seções com mais de cerca de 500 a 1.000 tokens com uma pequena sobreposição. Chunks baseados em headings mantêm um único tópico cada, o que geralmente recupera melhor do que janelas de tamanho fixo sobre a página inteira.

### O WebReaderAPI cria embeddings ou armazena vetores?

Não. O WebReaderAPI lê páginas e retorna Markdown com metadados. Você faz o embedding com o modelo da sua escolha e armazena no seu próprio banco de dados vetorial; a [página de LangChain e LlamaIndex](https://webreaderapi.com/pt/docs/langchain/) mostra os dois.

### Como mantenho o índice atualizado?

Releia apenas as páginas que mudaram. A maioria dos sitemaps traz uma data `lastmod` por URL; compare com a sua última leitura e envie as URLs alteradas como um lote. As páginas que agora falham devem ser removidas do índice.

### Posso incluir PDFs do mesmo site?

Sim. Um crawl lê os links de PDF no mesmo domínio com as mesmas verificações de robots.txt. Arquivos PDF de até 20 MB e 100 páginas são convertidos em Markdown, a 1 crédito por bloco iniciado de 10 páginas.

---

WebReaderAPI: O WebReaderAPI é uma API de leitor web para agentes de IA que converte qualquer página web pública em Markdown limpo, pago com cripto e sem envio de documentos. Os créditos pré-pagos a partir de US$ 0,07/1K páginas nunca expiram, e o robots.txt é respeitado. Sem KYC — sem documento, sem selfie, sem envio de arquivos. Pague com cripto.
