Repolode
howie6879

howie6879/ruia

Microframework assíncrono de scraping web em Python, baseado em asyncio e aiohttp, que busca tornar a coleta de URLs o mais prática possível.

Estrelas
1,739
Forks
185
Issues abertas
9
Último commit
há 8 dias

O que é?

Ruia é um microframework de scraping web para Python 3.6+, desenvolvido sobre asyncio e aiohttp. Ele permite definir um spider de forma declarativa: você descreve os dados que quer extrair e as regras de parsing, e o framework cuida das requisições concorrentes no event loop.

O framework foi desenvolvido para ser extensível. Middlewares permitem integrar etapas ao fluxo de requisições e respostas, e plugins ampliam seu comportamento. A instalação no Linux e no macOS pode incluir uvloop para acelerar o event loop, e o projeto também lista suporte a JavaScript entre seus recursos.

O README aponta para o projeto separado ruia-cache, que armazena respostas em cache durante a depuração para reduzir a carga de requisições nos sites-alvo, e para o ruia-shell, usado para depurar scripts de forma interativa. O crawling distribuído consta como ainda não implementado.

Recursos principais

  • 01Definição declarativa de spiders e itens de dados
  • 02Baseado em asyncio e aiohttp para realizar requisições concorrentes
  • 03Sistema de middlewares e plugins para extensão
  • 04Suporte opcional a uvloop no Linux e no macOS
  • 05Suporte a JavaScript

Casos de uso

  • Fazer scraping concorrente de várias páginas a partir de uma lista de URLs
  • Criar scripts pequenos e assíncronos de coleta de dados em Python
  • Estender um crawler com middlewares ou plugins personalizados

Início rápido

  1. 1

    Instale no Linux ou Mac (com uvloop)

    pip install -U ruia[uvloop]
  2. 2

    Instale no Windows

    pip install -U ruia
  3. 3

    Leia os tutoriais para criar seu primeiro spider

Antes de usar

  • O Ruia ainda está em desenvolvimento, então sua API pode mudar.
  • O rastreamento/extração distribuídos estão listados como TODO e ainda não estão disponíveis.

Em coleções

Tópicos

#web-scraping#crawler#asyncio#python#aiohttp#spider#async#asyncio-spider#crawling-framework#middlewares

Perguntas frequentes

O que é ruia?
Microframework assíncrono de scraping web em Python, baseado em asyncio e aiohttp, que busca tornar a coleta de URLs o mais prática possível. Ruia é um microframework de scraping web para Python 3.6+, desenvolvido sobre asyncio e aiohttp. Ele permite definir um spider de forma declarativa: você descreve os dados que quer extrair e as regras de parsing, e o framework cuida das requisições concorrentes no event loop.
ruia é gratuito? Qual é a licença?
ruia é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
ruia ainda é mantido?
Manutenção ativa. O último commit de ruia foi em 30 de out. de 2026.
Para que posso usar ruia?
Fazer scraping concorrente de várias páginas a partir de uma lista de URLs Criar scripts pequenos e assíncronos de coleta de dados em Python Estender um crawler com middlewares ou plugins personalizados
Como instalar ruia?
Instale no Linux ou Mac (com uvloop): pip install -U ruia[uvloop] Instale no Windows: pip install -U ruia Leia os tutoriais para criar seu primeiro spider
Onde consigo ruia?
O código-fonte e as instruções de instalação estão no GitHub: https://github.com/howie6879/ruia

Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.

Projetos relacionados