Este script le ayuda a extraer una lista de URL de libros del sitio web de Projekt Gutenberg, filtrar URL no deseadas y descargar los archivos EPUB correspondientes utilizando el servicio epub2go.
Un amigo mío se quejó de que Projekt Gutenberg ocultaba los archivos ePub de los libros que digitalizaban en su tienda detrás de un muro de pago. Quería obtener todos los libros en formato ePub y decidí hacerlo realidad, ya que los libros ya están disponibles en HTML. Después de investigar un poco, me topé con el servicio epub2go, que facilitó la conversión de libros de HTML a ePub sin la necesidad de dependencias locales ni cálculos.
Este script automatiza el proceso de descarga de libros del Projekt Gutenberg, los convierte al formato ePub utilizando el servicio epub2go y almacena los archivos convertidos en su máquina local*.
(*Esto actualmente es bastante feo ya que simplemente los descarga todos en el directorio de trabajo del script)
URL de libros raspados del Proyecto Gutenberg
Filtrar URL no deseadas (que no sean libros)
Descarga archivos ePub convertidos utilizando el servicio epub2go
Agrega retraso entre solicitudes para evitar sobrecargar el servicio.
Siga estos pasos para configurar y ejecutar el script:
Descargue el último ChromeDriver para Selenium que coincida con su versión de Chrome/Chromium instalada. Coloque el binario en la ubicación deseada y actualice la ruta en el código.
Descargue y descomprima el último navegador Google Chrome o Chromium para la ejecución autónoma de JavaScript del lado del cliente.
Instale las dependencias requeridas de Python usando pip:
instalación de pip -r requisitos.txt
Retraso configurable entre descargas y conversiones.
Paralelización de descargas para aumentar la velocidad de descarga (con un límite sensato para garantizar que no sobrecarguemos epub2go)
Elimine los nombres completos de los autores y los títulos de los libros con anticipación, luego cree una estructura de directorio basada en books/author/book_title
y coloque los archivos ePub allí.