Home
Login

Web scraper Node.js/TypeScript de alto desempenho, otimizado para LLMs, com suporte para rastreamento de múltiplos mecanismos de busca e extração de dados estruturados.

MITTypeScript 500any4aiAnyCrawl Last Updated: 2025-07-03

Detalhes do Projeto AnyCrawl

🚀 Visão Geral do Projeto

AnyCrawl é um aplicativo de web scraping e coleta de dados de alto desempenho, construído com Node.js/TypeScript. O projeto é otimizado para grandes modelos de linguagem (LLM), capaz de converter conteúdo de sites em formatos de dados utilizáveis por LLMs e extrair dados estruturados de páginas de resultados de pesquisa (SERP) de mecanismos de busca como Google, Bing e Baidu.

🎯 Principais Características

AnyCrawl se destaca em várias áreas:

  • Web Scraping de SERP: Suporte para múltiplos mecanismos de busca, com capacidade de processamento em lote
  • Web Scraping de Páginas Web: Extração eficiente de conteúdo de páginas únicas
  • Web Scraping de Sites: Funcionalidade de rastreamento inteligente de sites completos
  • Arquitetura de Alto Desempenho: Design de arquitetura multi-thread e multi-processo
  • Processamento em Lote: Processamento eficiente de tarefas de web scraping em lote

🏗️ Arquitetura Técnica

Design Moderno

  • Construído com Node.js/TypeScript
  • Otimizado para grandes modelos de linguagem (LLM)
  • Suporte para processamento em lote multi-thread nativo
  • Design de arquitetura moderna

Mecanismos de Web Scraping Suportados

AnyCrawl suporta vários mecanismos de web scraping:

  1. Cheerio: Análise estática de HTML, a mais rápida
  2. Playwright: Renderização JavaScript, usando um motor moderno
  3. Puppeteer: Renderização JavaScript, usando o motor Chrome

🚀 Começo Rápido

Implantação com Docker

Use o Docker Compose para iniciar rapidamente:

docker compose up --build

Configuração de Variáveis de Ambiente

Variável Descrição Valor Padrão Exemplo
NODE_ENV Ambiente de tempo de execução production production, development
ANYCRAWL_API_PORT Porta do serviço API 8080 8080
ANYCRAWL_HEADLESS Se o motor do navegador usa o modo headless true true, false
ANYCRAWL_PROXY_URL URL do servidor proxy (suporta HTTP e SOCKS) (nenhum) http://proxy:8080
ANYCRAWL_IGNORE_SSL_ERROR Ignorar erros de certificado SSL true true, false
ANYCRAWL_KEEP_ALIVE Manter a conexão entre as requisições true true, false
ANYCRAWL_AVAILABLE_ENGINES Mecanismos de web scraping disponíveis (separados por vírgula) cheerio,playwright,puppeteer playwright,puppeteer
ANYCRAWL_API_DB_TYPE Tipo de banco de dados sqlite sqlite, postgresql
ANYCRAWL_API_DB_CONNECTION String/caminho de conexão do banco de dados /usr/src/app/db/database.db /path/to/db.sqlite
ANYCRAWL_REDIS_URL URL de conexão do Redis redis://redis:6379 redis://localhost:6379
ANYCRAWL_API_AUTH_ENABLED Habilitar autenticação da API false true, false
ANYCRAWL_API_CREDITS_ENABLED Habilitar sistema de créditos false true, false

📝 Guia de Uso da API

API de Web Scraping de Páginas Web

Uso Básico

curl -X POST http://localhost:8080/v1/scrape \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_ANYCRAWL_API_KEY' \
-d '{
  "url": "https://example.com",
  "engine": "cheerio"
}'

Descrição dos Parâmetros

Parâmetro Tipo Descrição Valor Padrão
url string (obrigatório) A URL a ser raspada. Deve ser uma URL válida começando com http:// ou https:// -
engine string O mecanismo de web scraping a ser usado. Opções: cheerio (análise estática de HTML, mais rápido), playwright (renderização JavaScript, motor moderno), puppeteer (renderização JavaScript, motor Chrome) cheerio
proxy string A URL do proxy para a requisição. Suporta proxies HTTP e SOCKS. Formato: http://[username]:[password]@proxy:port (nenhum)

API de Web Scraping de Mecanismos de Busca

Uso Básico

curl -X POST http://localhost:8080/v1/search \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer YOUR_ANYCRAWL_API_KEY' \
-d '{
  "query": "AnyCrawl",
  "limit": 10,
  "engine": "google",
  "lang": "all"
}'

Descrição dos Parâmetros

Parâmetro Tipo Descrição Valor Padrão
query string (obrigatório) A consulta de pesquisa a ser executada -
engine string O mecanismo de busca a ser usado. Opções: google google
pages integer O número de páginas de resultados de pesquisa a serem recuperadas 1
lang string O código de idioma para os resultados da pesquisa (por exemplo: 'en', 'zh', 'all') en-US

🧪 Testes e Desenvolvimento

Playground

Você pode usar o Playground para testar a API e gerar exemplos de código para sua linguagem de programação favorita.

💡 Nota: Se você estiver auto-hospedando o AnyCrawl, certifique-se de substituir https://api.anycrawl.dev pela URL do seu próprio servidor.

❓ Perguntas Frequentes

P: Posso usar um proxy?

R: Sim, AnyCrawl suporta proxies HTTP e SOCKS. Configure através da variável de ambiente ANYCRAWL_PROXY_URL.

P: Como lidar com conteúdo renderizado em JavaScript?

R: AnyCrawl suporta Puppeteer e Playwright para lidar com necessidades de renderização JavaScript.

Conclusão

AnyCrawl representa a vanguarda da tecnologia moderna de web scraping, especialmente em cenários de aplicação de IA e aprendizado de máquina. Seu alto desempenho, facilidade de uso e rica funcionalidade o tornam a escolha ideal para desenvolvedores e empresas que lidam com tarefas de coleta de dados em larga escala.

Star History Chart