Extrator em Java converte conteúdos da web em livros digitais
Ferramenta de código aberto estrutura textos online e gera arquivos prontos para leitura em múltiplos formatos.
Edição: Anderson Gomes
· 4 min de leitura

O projeto de código aberto mantido pelo usuário freeok no GitHub oferece uma solução para capturar publicações digitais e convertê-las em arquivos locais. A ferramenta ganhou tração recente com o avanço de discussões sobre arquivamento de páginas e leitura desconectada, acumulando centenas de novas avaliações positivas em curto intervalo. O software resolve a perda de formatação e a dependência de conexões contínuas ao extrair dados de portais e estruturá-los em documentos padronizados.
Dados rápidos
- Repositório: freeok/so-novel
- Licença: AGPL-3.0
- Linguagem principal: Java
- Métricas: 8.789 estrelas e 744 forks
- Posição no ranking: não informado no repositório
- Data da consulta: 2026-10-27
O problema do consumo de textos online
Leitores de publicações seriadas e artigos extensos na web enfrentam interfaces carregadas de elementos secundários. Páginas de leitura frequentemente inserem scripts pesados e anúncios que dificultam a leitura contínua em telas convencionais ou aparelhos dedicados.
A ausência de opções nativas de exportação impede a criação de cópias de segurança de obras publicadas em capítulos na internet. Se um portal suspende o serviço ou altera a estrutura de links, o usuário perde o acesso aos títulos acompanhados.
A organização manual desses conteúdos consome tempo e exige conhecimentos de diagramação digital. Faltava um mecanismo flexível que combinasse extração estruturada de páginas com rotinas diretas de conversão para padrões consolidados de leitura digital.
Funcionamento e modos de interface
O sistema foi programado em Java e opera por meio de parâmetros específicos de inicialização na máquina virtual. O usuário pode alternar entre três interfaces distintas: TUI (interface de usuário em modo texto no terminal), CLI (linha de comando direta) ou WebUI (painel acessível pelo navegador). O padrão de execução carrega a interface em modo texto com base em um arquivo chamado config.ini e regras armazenadas em diretório próprio.
Para ambientes Linux, o projeto disponibiliza um instalador executável diretamente via terminal:
bash <(curl -sSL https://raw.githubusercontent.com/freeok/so-novel/main/bin/linux-install.sh)
No ecossistema de contêineres, o serviço pode rodar integrado com Docker e Docker Compose, expondo a porta 7765 para acesso via navegador web. A configuração em contêiner define a variável de ambiente JAVA_OPTS com o parâmetro -Dmode=web para habilitar o painel visual, permitindo o mapeamento de pastas locais para salvar os arquivos baixados e editar regras de análise de documentos.
Casos de uso práticos
- Arquivamento local de capítulos publicados em portais de literatura serializada, garantindo que o acervo pessoal permaneça acessível sem conexão à internet.
- Produção de livros digitais em formato EPUB para leitura em dispositivos dedicados e aplicativos móveis de leitura.
- Geração de documentos em formato TXT e PDF a partir de sequências de links web para fins de estudo e catalogação de dados textuais.
- Hospedagem em servidores domésticos ou sistemas de armazenamento conectado à rede (NAS), mantendo um serviço web centralizado para pedidos de download de textos.
Diferenças em relação a ferramentas comuns
Muitos utilitários de captura salvam páginas completas no formato HTML cru ou geram capturas estáticas que misturam menus e barras de navegação com o texto principal. O projeto adota um mecanismo classificado como document-parser, projetado para separar o miolo da história dos elementos da página.
A variedade de interfaces nativas também estabelece um contraste prático. O mesmo núcleo Java atende tanto usuários que preferem automação via comandos sem tela gráfica quanto quem prefere usar uma página de controle acessível na rede local, sem exigir softwares externos para a orquestração do navegador.
Limitações técnicas e cuidados de segurança
O repositório adota a licença AGPL-3.0, que impõe exigências estritas de compartilhamento de código para quem desenvolve modificações distribuídas ou oferecidas como serviço de rede. Equipes que avaliam o uso comercial devem observar essas obrigações legais.
Em termos de maturidade, o histórico registra início em 23 de maio de 2022, com atualização em 26 de outubro de 2026 e 24 chamados abertos. A compilação a partir do código-fonte requer Java Development Kit 21, Maven e Git, demandando consumo moderado de memória para a máquina virtual.
Não constam no repositório auditorias formais de segurança para os scripts de instalação remota fornecidos nos comandos rápidos. Testes prévios em ambientes isolados são recomendados antes de executar rotinas de download em sistemas operacionais principais.
Resumo rápido
- Projeto: freeok/so-novel
- Licença: AGPL-3.0
- Linguagem: Java
- Estrelas: 8.789
- Ranking: não informado no repositório
- Risco principal: execução de scripts de instalação direta da web e exigências de abertura da licença AGPL-3.0
Fontes
- Repositório no GitHub: https://github.com/freeok/so-novel
- Versão v1.12.0: https://github.com/freeok/so-novel/releases/latest
- Página oficial: sem site oficial
- Java
- AGPL-3.0
- Repositórios em Alta
- GitHub Trending

Agendamento de redes sociais ganha automação direta com agentes de IA
· 4 min de leitura
Automação de inteligência em cibersegurança rastreia dados expostos na internet
A ferramenta em Python reúne mais de duzentos módulos para identificar ativos corporativos e ameaças potenciais a partir de fontes públicas.
· 5 min de leitura

Automação transforma foto e texto em vídeos de apresentador digital
· 4 min de leitura

Controle total e auto-hospedagem desafiam soluções fechadas de acesso remoto
· 4 min de leitura