Este script ajuda você a extrair uma lista de URLs de livros do site do Projekt Gutenberg, filtrar URLs indesejados e baixar os arquivos EPUB correspondentes usando o serviço epub2go.
Um amigo meu reclamou que o Projekt Gutenberg escondeu os arquivos ePub dos livros que digitalizaram em sua loja atrás de um acesso pago. Ele queria que todos os livros estivessem no formato ePub, e eu decidi fazer isso acontecer, já que os livros já estão disponíveis em HTML. Depois de alguma pesquisa, me deparei com o serviço epub2go, que facilitou a conversão de livros de HTML para ePub sem a necessidade de dependências e cálculos locais.
Este script automatiza o processo de download de livros do Projekt Gutenberg, converte-os para o formato ePub usando o serviço epub2go e armazena os arquivos convertidos em sua máquina local*.
(*Isso atualmente é muito feio, pois apenas coloca todos eles no diretório de trabalho do script)
Raspar URLs de livros do Projekt Gutenberg
Filtre URLs indesejados (que não sejam livros)
Baixa arquivos ePub convertidos usando o serviço epub2go
Adiciona atraso entre solicitações para evitar sobrecarregar o serviço
Siga estas etapas para configurar e executar o script:
Baixe o ChromeDriver for Selenium mais recente que corresponda à versão instalada do Chrome/Chromium. Coloque o binário no local desejado e atualize o caminho no código.
Baixe e descompacte o navegador Google Chrome ou Chromium mais recente para execução sem cabeça de JavaScript do lado do cliente.
Instale as dependências Python necessárias usando pip:
pip instalar -r requisitos.txt
Atraso configurável entre downloads e conversões
Paralelização de downloads para aumentar a velocidade de download (com um limite razoável para garantir que não estamos sobrecarregando o epub2go)
Raspe os nomes completos dos autores e títulos dos livros com antecedência, crie uma estrutura de diretórios baseada em books/author/book_title
e coloque os arquivos ePub lá