← All Articles

As Melhores Configuracoes do Cloudflare /crawl para Qualquer Website

Configuracoes do endpoint Cloudflare /crawl para diferentes tipos de sites

O endpoint /crawl do Cloudflare Browser Rendering e uma das formas mais rapidas de extrair conteudo de websites em escala, mas as configuracoes padrao nao sao otimas para a maioria dos casos de uso. Apos executar crawls em dezenas de sites, desde lojas Shopify ate SPAs React e sites de documentacao, estas sao as configuracoes que consistentemente entregam os melhores resultados.

Este guia abrange o que cada configuracao faz, quando altera-la e os comandos especificos que funcionam melhor para tipos comuns de sites.

A Decisao Mais Importante: Modo de Renderizacao

Todo crawl comeca com uma escolha: o Cloudflare deve carregar a pagina num navegador headless ou apenas buscar o HTML bruto?

render: false (--no-render) busca o HTML sem executar JavaScript. E rapido, gratuito durante o periodo beta e produz uma saida limpa para qualquer site que serve conteudo na resposta HTML inicial.

render: true (o padrao) carrega cada pagina numa instancia headless de Chromium, executa JavaScript, espera a pagina estabilizar e entao extrai o conteudo. Isto e mais lento, consome horas de navegador e custa dinheiro apos as 10 horas/mes gratuitas.

Quando Cada Modo Faz Sentido

Tipo de Site Modo Recomendado Razao
Lojas Shopify --no-render Produtos, colecoes e paginas sao renderizados no servidor
Sites WordPress --no-render O conteudo esta na resposta HTML inicial
Sites estaticos e blogs --no-render Sem conteudo dependente de JavaScript
Sites Hugo, Jekyll, Astro --no-render HTML pre-construido no momento do deploy
SPAs React ou Vue render: true O conteudo carrega via JavaScript apos o carregamento inicial da pagina
Sites com dados carregados sob demanda render: true Avaliacoes, precos e recomendacoes podem requerer JS

Nos nossos testes, sites Shopify retornaram aproximadamente 90% de conteudo identico entre os modos de renderizacao. O conteudo extra da renderizacao era maioritariamente elementos dinamicos de UI como gavetas de carrinho e widgets de recomendacao, nao dados significativos de produtos. Cobrimos a comparacao completa dos modos de renderizacao com benchmarks comparativos em Pros e Contras do Endpoint Cloudflare Crawl com Lojas Shopify.

A regra geral: comece com --no-render. Se os resultados estiverem a faltar conteudo de que precisa, mude para o modo de renderizacao.

A flag --source controla como o Cloudflare encontra paginas para rastrear.

--source sitemaps le o sitemap.xml do site e apenas rastreia URLs listados la. Isto e previsivel, cobre as paginas que o proprietario do site considera canonicas e evita rastrear paginas duplicadas ou de baixo valor.

--source links comeca no URL fornecido e segue links <a href> que encontra em cada pagina. Isto descobre paginas da mesma forma que um motor de busca faria, mas pode perder paginas orfas e pode rastrear paginacao, filtros ou outros padroes de URL de baixo valor.

--source all (o padrao) combina ambos os metodos.

Qual Usar

Use --source sitemaps quando o site tem um sitemap completo e bem mantido. A maioria dos sites Shopify e WordPress tem. Esta e a opcao mais fiavel para extracao completa de conteudo do site.

Use --source links ou all quando o sitemap esta em falta, incompleto, ou quando quer especificamente auditar a estrutura de links internos do site.

Bloqueio de Recursos para Crawls com Render-True

Esta e a otimizacao individual mais impactante para crawls com render-true. Por padrao, o navegador headless carrega cada imagem, fonte, folha de estilo e ficheiro de media em cada pagina. Isto e desperdicado quando so precisa do conteudo de texto.

Adicione --block-resources image media font stylesheet a qualquer crawl com render-true. O efeito e significativo:

  • Velocidade: o tempo de crawl cai de aproximadamente 7 segundos por pagina para aproximadamente 2 segundos por pagina
  • Custo: as horas de navegador consumidas sao reduzidas em 60-70%
  • Fiabilidade: paginas que ficariam penduradas indefinidamente a esperar por recursos lentos de CDN agora completam normalmente

O navegador continua a executar JavaScript e a construir o DOM. Apenas ignora o download de recursos que nao afetam o conteudo de texto.

A Condicao de Espera

A flag --wait-until diz ao navegador quando parar de esperar e extrair conteudo. O padrao espera que toda a atividade de rede termine, o que e lento e desnecessario para extracao de conteudo.

--wait-until domcontentloaded diz ao navegador para extrair conteudo assim que o DOM estiver pronto. Para extracao de texto, isto e quase sempre suficiente. JavaScript que carrega conteudo ja tera sido executado, mas pings de analytics em segundo plano e chamadas de redes publicitarias nao atrasarao o crawl.

Comandos Recomendados por Tipo de Site

Loja Shopify (Site Completo)

python crawl.py run https://example.com \
  --limit 500 \
  --format markdown \
  --no-render \
  --source sitemaps \
  -o results.json

Rapido, gratuito e cobre todo o catalogo de produtos. Os sitemaps do Shopify sao abrangentes, entao --source sitemaps oferece cobertura completa sem rastrear colecoes paginadas ou paginas de resultados de pesquisa.

Loja Shopify (Apenas Produtos)

python crawl.py run https://example.com \
  --limit 1000 \
  --format markdown \
  --no-render \
  --include-patterns "https://example.com/products/**" \
  -o products.json

A flag --include-patterns restringe o crawl a URLs que correspondem ao padrao fornecido. Util quando so precisa de paginas de produtos e quer ignorar colecoes, posts de blog e paginas de politicas.

WordPress ou Blog Estatico

python crawl.py run https://example.com \
  --limit 500 \
  --format markdown \
  --no-render \
  --source sitemaps \
  -o results.json

As mesmas configuracoes do Shopify. Sites WordPress sao renderizados no servidor e tem sitemaps fiaveis. Geradores de sites estaticos (Hugo, Jekyll, Eleventy, Astro) produzem HTML pre-construido, entao render-false captura tudo.

SPA React ou Vue

python crawl.py run https://example.com \
  --limit 500 \
  --format markdown \
  --source sitemaps \
  --block-resources image media font stylesheet \
  --wait-until domcontentloaded \
  -o results.json

Render-true e o padrao, entao nenhuma flag e necessaria. As adicoes criticas sao --block-resources e --wait-until domcontentloaded. Sem estas, o crawl sera lento e caro.

Se a SPA nao tiver um sitemap, mude para --source links.

Site de Documentacao

python crawl.py run https://docs.example.com \
  --limit 500 \
  --format markdown \
  --no-render \
  --depth 5 \
  --exclude-patterns "*/changelog/**" "*/archive/**" \
  -o docs.json

Sites de documentacao frequentemente tem estruturas de links profundas. Aumente --depth para seguir hierarquias de paginas aninhadas. Use --exclude-patterns para ignorar paginas de changelog, versoes arquivadas ou outro conteudo de que nao precisa.

Benchmarks de Desempenho

Estes numeros vem de crawls reais em lojas Shopify e de e-commerce em marco de 2026. Os nomes dos sites foram anonimizados.

Site Paginas Modo Tamanho do Conteudo Tempo de Navegador Tempo Total
Loja de suplementos (protegida contra bots) 89/100 no-render 5.9 MB 0s ~3.5 min
Marca de vestuario (catalogo grande) 500/500 no-render 77.1 MB 0s ~18 min
Marca de vestuario (catalogo grande) 4/5 render-true 0.6 MB 0.9s ~10s
Marca DTC outdoor 256/266 no-render 11.0 MB 0s ~5 min
Marca DTC outdoor 256/266 render-true 12.5 MB 1,338s ~25 min
Loja de vestuario medico 1,200 no-render grande 0s ~55 min

Padroes-chave dos dados:

  • No-render e 5 a 10 vezes mais rapido que render-true para o mesmo site
  • No-render consome zero tempo de navegador (gratuito durante o beta)
  • O tempo real escala linearmente com a contagem de paginas para crawls no-render
  • Sites com diretivas crawl-delay no robots.txt serao lentos independentemente das configuracoes, porque o crawler respeita-as

Otimizacao de Custos

O plano Workers Paid custa $5/mes. Alem disso, os custos vem das horas de navegador consumidas por crawls com render-true.

Nivel gratuito: 10 horas de navegador/mes. Um crawl render-true de 500 paginas com bloqueio de recursos usa aproximadamente 15-20 minutos de tempo de navegador. Pode executar mais de 30 crawls otimizados por mes dentro do nivel gratuito.

Sem bloqueio de recursos: o mesmo crawl de 500 paginas poderia usar mais de 60 minutos de tempo de navegador, reduzindo a sua capacidade gratuita para aproximadamente 10 crawls por mes.

Crawls no-render sao gratuitos durante o periodo beta. Para sites renderizados no servidor, nao ha razao para usar render-true.

Formula de Custo

Browser cost = (pages x seconds_per_page) / 3600 x $0.09

A 2 segundos por pagina (render-true otimizado): 500 paginas = 0.28 horas = $0.025

A 7 segundos por pagina (nao otimizado): 500 paginas = 0.97 horas = $0.087

A diferenca e pequena por crawl, mas acumula-se quando executa crawls diarios ou semanais em multiplos sites.

Limites a Conhecer

Recurso Limite
Paginas por crawl 100,000
Trabalhos de crawl por dia Ilimitado (Workers Paid)
Horas de navegador 10 hrs/mes gratuitas, depois $0.09/hr
Pedidos API 600/minuto
Navegadores simultaneos 30 por conta
Tempo de vida do trabalho 7 dias max, resultados disponiveis 14 dias

Problemas Comuns e Solucoes

Erros 403 na maioria das paginas: o site tem protecao contra bots (Cloudflare Bot Management, Akamai, Datadome). Isto nao pode ser contornado atraves do endpoint /crawl. O crawl sera concluido, mas a maioria das paginas retornara erros.

Crawl com render-true trava perto do fim: uma ou mais paginas tem recursos de carregamento lento a bloquear o navegador. Adicione --block-resources image media font stylesheet e --wait-until domcontentloaded.

Conteudo em falta no modo no-render: o site carrega conteudo via JavaScript. Mude para render-true com as otimizacoes de bloqueio de recursos e espera.

Script crasha a meio do crawl: o trabalho de crawl continua a correr nos servidores do Cloudflare. Verifique o estado e obtenha os resultados quando terminar:

python crawl.py status <job_id>
python crawl.py results <job_id> -o out.json

Resultados vazios com fonte sitemaps: o sitemap do site pode estar em falta ou bloqueado. Mude para --source links ou --source all.

Limitacoes Conhecidas

Antes de construir um fluxo de trabalho em torno do endpoint /crawl, esteja ciente destas restricoes:

  • Resolucao incorreta de URLs relativos: o conversor de markdown do Cloudflare resolve incorretamente URLs relativos como //www.example.com/path ao prefixar o URL da pagina. Isto cria caminhos malformados na saida, particularmente em sites Shopify.
  • Conteudo padrao em todas as paginas: menus de navegacao, mega menus e rodapes aparecem no markdown de cada pagina. Para um site Shopify tipico, aproximadamente 90% do conteudo por pagina e conteudo de template repetido. Veja a nossa analise de proporcoes de conteudo padrao em crawls reais de Shopify.
  • Sem extracao de dados estruturados: JSON-LD, schema.org e dados OpenGraph nao sao analisados no modo no-render. Render-true captura tags OG basicas nos metadados, mas nao o schema completo.
  • Sem detecao de 404: o crawl apenas processa URLs ativos. Links mortos e links internos quebrados nao sao reportados.
  • URL inicial unico: a API aceita um URL e navega para fora. Nao aceita uma lista de URLs. Para busca de URLs em lote, use os endpoints /markdown ou /scrape em vez disso.

Perguntas Frequentes

Devo usar render true ou render false com o Cloudflare /crawl?

Use render false (--no-render) para sites renderizados no servidor como Shopify, WordPress e sites estaticos. Use render true apenas para aplicacoes de pagina unica construidas com React, Vue ou Angular onde o conteudo carrega via JavaScript. Nos testes, sites Shopify retornaram aproximadamente 90% de conteudo identico em ambos os modos.

Quanto custa o Cloudflare Browser Rendering /crawl?

Um plano Workers Paid custa $5/mes. Crawls com render-false consomem zero tempo de navegador e sao gratuitos durante o beta. Crawls com render-true usam horas de navegador: 10 horas/mes sao gratuitas, depois $0.09/hora. Bloquear imagens, fontes e folhas de estilo durante crawls com render-true reduz significativamente o tempo de navegador.

Qual e a melhor fonte de descoberta de URLs para o Cloudflare /crawl?

Use --source sitemaps para sites com sitemaps completos como Shopify e WordPress. Isso oferece cobertura previsivel e completa. Use --source links ou all quando o sitemap pode estar incompleto ou quando voce quer descobrir paginas da mesma forma que um motor de busca faria.

Por que meu crawl Cloudflare com render-true trava nas ultimas paginas?

Paginas com recursos de carregamento lento, como imagens grandes ou scripts de terceiros, podem bloquear o navegador headless por mais de 60 segundos. Corrija isso adicionando --block-resources image media font stylesheet e --wait-until domcontentloaded ao seu comando de crawl.