Para muito trabalho com dados da web, o crawl mais barato é aquele que alguém já fez. O Common Crawl publica uma grande fatia da web pública todo mês, gratuitamente, e sustenta muitos dos conjuntos de dados textuais usados para treinar modelos de IA. Mas ele foi construído para abrangência, não para a sua lista específica de fontes, e saber onde ele para economiza semanas de trabalho das equipes.
Este guia cobre o que o Common Crawl contém, o que ele não contém, como verificar se ele cobre as páginas de que você precisa, e quando vale a pena rodar seu próprio crawl.
O que você obtém
Common Crawl é uma organização sem fins lucrativos dos EUA que descreve seu objetivo como fornecer uma cópia da internet a pesquisadores, empresas e indivíduos sem custo. Os dados do seu crawl mais recente, CC-MAIN-2026-43, capturado entre 5 e 18 de outubro de 2026:
| Páginas | 2,16 bilhões |
| Domínios registrados | 34,3 milhões |
| Hosts | 41,4 milhões |
| URLs não vistas em nenhum crawl anterior | 830,1 milhões |
| Conteúdo não comprimido | 371,19 TiB |
| Frequência | Cerca de um crawl por mês |
| Formatos | WARC (respostas brutas), WAT (metadados), WET (texto simples) |
| Acesso | Bucket AWS público em us-east-1, downloads HTTPS, índices de URL |
A combinação de idiomas é ampla, mas desigual: o inglês representou 42,6% das páginas HTML detectadas nesse crawl, seguido pelo russo com 6,3% e pelo alemão com 5,8%.
O que fica de fora
Esses limites vêm da própria documentação do Common Crawl, e eles definem a maioria das decisões entre construir ou reutilizar.
- É uma amostra. O Common Crawl afirma que geralmente não arquiva um site inteiro, mas “um subconjunto selecionado aleatoriamente dele”. Não espere encontrar todas as páginas de produto ou todos os artigos.
- Sem JavaScript. Seu FAQ diz que o JavaScript não é executado e que cookies não são usados, então o conteúdo que só aparece depois que os scripts rodam fica ausente.
- Sem logins ou paywalls. Ele declara que não passa por paywalls nem faz login em nenhum site.
- Ele respeita recusas. O CCBot verifica o robots.txt primeiro e obedece ao crawl-delay. No crawl de outubro, 4,85% das requisições foram negadas pelo robots.txt ou por um 403, e 18,47% foram ignoradas. Nossa análise sobre quanto da web está atrás de um bot wall coloca esse número em contexto.
- Um único ponto de vista. O crawl é feito a partir de um pequeno conjunto de endereços publicados, então você obtém uma única visão de cada página. Páginas que variam por país, idioma ou dispositivo aparecem em apenas uma versão.
- É um instantâneo. Uma página aparece como estava na data da captura, que pode ter semanas.
Verifique a cobertura antes de decidir
O teste mais rápido é perguntar ao índice se suas fontes estão lá. O script abaixo encontra o crawl mais recente e consulta capturas de um padrão de URL. Ele envia uma requisição por vez a partir da sua própria conexão, como o Common Crawl pede; para consultas em massa, use o índice Parquet de URLs na AWS. Funciona em Python 3.9 e versões posteriores com requests.
from __future__ import annotations
import json
import requests
INDEX = "https://index.commoncrawl.org"
HEADERS = {"User-Agent": "coverage-check/1.0 (contact: data-team@example.com)"}
def latest_crawl():
"""The newest crawl ID, from Common Crawl's own list."""
return requests.get(f"{INDEX}/collinfo.json", headers=HEADERS, timeout=60).json()[0]["id"]
def captures(crawl, url_pattern, limit=1000):
"""Captures of matching URLs in one crawl. One request, no proxies: the index asks for that."""
r = requests.get(f"{INDEX}/{crawl}-index", headers=HEADERS, timeout=120,
params={"url": url_pattern, "output": "json", "limit": limit})
if r.status_code == 404: # no captures at all
return []
r.raise_for_status()
return [json.loads(line) for line in r.text.splitlines()]
if __name__ == "__main__":
crawl = latest_crawl()
rows = captures(crawl, "en.wikipedia.org/wiki/*")
statuses = {}
for row in rows:
statuses[row["status"]] = statuses.get(row["status"], 0) + 1
print(crawl, "captures returned:", len(rows), "by status:", dict(sorted(statuses.items())))
print("first:", rows[0]["url"], rows[0]["timestamp"]) if rows else print("none")
Resultado em 6 de novembro de 2026, para um padrão na Wikipédia em inglês, limitado a 1.000 resultados:
CC-MAIN-2026-43 captures returned: 1000 by status: {'200': 949, '301': 15, '404': 30, '429': 6}
first: https://en.wikipedia.org/wiki/!!! 20261017084408
Duas coisas chamam a atenção de imediato. A cobertura de um site grande é real, mas parcial, então conte o que você obtém para seus próprios padrões. E as capturas carregam o status que o Common Crawl recebeu: aqui, 30 eram 404s e 6 eram 429s, então uma captura nem sempre é conteúdo. Filtre por status antes de usar qualquer coisa.
Quando o crawl gratuito é suficiente
- Treinamento e pesquisa sobre texto amplo. Modelagem de linguagem, classificadores e estatísticas em escala web precisam mais de abrangência do que de qualquer página em particular. É nisso que o Common Crawl é melhor, e nosso guia sobre construção de conjuntos de dados de treinamento a partir da web aberta cobre a filtragem e a deduplicação que ainda são necessárias.
- Descoberta. Encontrar quais domínios mencionam um tópico, mapear links ou estimar o tamanho de um site é barato com o índice de URLs.
- Comparações históricas. Instantâneos mensais que remontam anos são difíceis de recriar por conta própria.
Quando você precisa do seu próprio crawl
- Você precisa de páginas específicas, por completo. Uma amostra vai deixar algumas de fora, e você não vai saber quais.
- Você precisa que seja atual. Preços, estoque e rankings mudam diariamente. Um instantâneo mensal é história.
- O conteúdo precisa de JavaScript. Muitas páginas modernas só renderizam seus dados no navegador.
- Você precisa de uma visão local. Preços, resultados de busca e anúncios variam por país. Um crawl feito de um único ponto de vista dá uma única resposta. Coletar cada mercado como seus visitantes o veem é para isso que servem os proxies residenciais.
- Você precisa comprovar a origem. Um crawl que você mesmo executa permite registrar exatamente como, quando e de onde cada página foi obtida.
Muitas equipes combinam os dois: Common Crawl para abrangência e descoberta, seu próprio crawler para as fontes que mais importam.
Termos que vale a pena ler
O Common Crawl mantém seus próprios termos enxutos, mas eles importam. Seus termos de uso dizem que o conteúdo coletado pode estar sujeito aos termos dos sites de onde veio, que os usuários concordam em respeitar direitos autorais e outros direitos, e recomendam aconselhamento jurídico antes de uso comercial. O usuário também assume a responsabilidade por reivindicações decorrentes do uso do conteúdo para desenvolver, treinar ou implantar sistemas de IA. Desde 2025, o Common Crawl também publica um registro de solicitações legais de exclusão e remove as URLs afetadas de crawls e ferramentas futuras. Reutilizar os dados não tira você dessas questões, então mantenha registros do que foi usado.
Conclusão
O Common Crawl é o ponto de partida certo quando você precisa de abrangência, histórico ou uma primeira olhada barata. Ele deixa de ser suficiente quando você precisa de páginas específicas, dados atuais, conteúdo em JavaScript ou uma visão local. Verifique primeiro sua cobertura com o índice, filtre as capturas por status, leia os termos, e faça seu próprio crawl apenas onde a amostra gratuita for insuficiente.
Fontes e referências
- Common Crawl, FAQ: commoncrawl.org/faq
- Common Crawl, arquivo do crawl de outubro de 2026: commoncrawl.org
- Common Crawl, Termos de Uso (última atualização em 7 de março de 2024): commoncrawl.org/terms-of-use
- Common Crawl, Comece aqui: commoncrawl.org/get-started
- Common Crawl, Índice de URL: commoncrawl.org/url-index
- Estatísticas do Common Crawl, tamanho do crawl, idiomas e métricas do crawler: commoncrawl.github.io
- Common Crawl, Registro de exclusão (17 de setembro de 2025): commoncrawl.org
- Common Crawl, Esclarecendo os fatos (4 de novembro de 2025): commoncrawl.org