Descargar Libros en SafariBook a EPUB para el Kindle

Ahora les comentare de una utilidad que me encontré en GitHub, es algo especialmente útil para los que estudiamos leyendo montones de libros. SafariBooks es (si no es la única) una web que posee montones de libros sobre Tech  para los programadores, ingenieros, desarrolladores, entre otros que podran buscar para entender alguna tecnología y lenguaje.

La verdad es que es muy completo y es muy raro no encontrar un libro que necesites. Funciona con una suscripción Anual o Mensual. Empresas como Cisco se los concede a sus ingenieros totalmente Gratis, es solo como una referencia de lo grandioso de la pagina.

SafariBooks tiene los libros digitalizados es decir es en formato HTML para leerlo en la propia Web, tiene la capacidad de adaptar características como color de fondo, espaciado y tamaño de la letra para que nos facilite la lectura. Aquí esta un punto a nuestro favor ya que la propia pagina no permite descargar ningun libro, es solo online. Al ser HTML existe la posiblidad de descargarlo.

Aquí donde llega la magia al ser HTML es posible obtener cada link del indice, descargarlo  y finalmente armarlo. Esto es exactamente lo que hace este Script en Python que hace precisamente lo que les comento.

Para empezar de manera recomendada es usar Ubuntu en Windows 10. En la Tienda de Windows, aqui puedes descargarlo.

Descargar Windows – Tienda de Windows 10

Una vez que lo instalemos tenemos la posibilidad de tener Linux en la comodidad de Windows, entre ellos lo que haremos hoy en este articulo.

Para empezar les compartiré dos repositorios que harán exactamente lo mismo. Asi que vamos con la primera opción:

La primera opción es un Fork del repositorio de ViciousPotato en mi repositorio ya que posee un problema que genera un Error 404 la cual corregí. Ejecutaremos lo siguiente:

git clone https://github.com/gusdrawn/safaribooks.git
cd safaribooks
pip install .

Esto permite descargar e instalar los requerimientos o módulos de Python para lograr el cometido. Y finalmente con este codigo empezara a descargar el libro:

safaribooks -u CORREO -p PASSWORD -b ID download-epub

El ID lo consigues en el mismo Link cuando abres algun Libro en Safari. No olvides reemplazar las palabras en mayusculas con los datos reales, es decir tu cuenta de Safari, Contraseña y finalmente el ID del libro.

https://www.safaribooksonline.com/library/view/ip-multicast-volume/9780134399591/

Por lo tanto:

safaribooks -u CORREO -p PASSWORD -b 9780134399591 download-epub

El segundo repositorio por si el primero no te sirvio es lorenzodifuccia la cual funciona muy bien. Lo que tienes que ejecutar es lo siguiente y listo.

git clone https://github.com/lorenzodifuccia/safaribooks.git
cd safaribooks/
pip3 install -r requirements.txt
python3 safaribooks.py --cred "CORREO:PASSWORD" ID

Con esto finalmente tenemos el libro EPUB pero este formato aun no es compatible con Kindle ya que Amazon aun no le da soporte. Por lo tanto es necesario usar un aplicativo bastante conocidos para los que poseen eBooks llamado Calibre es el llamado el iTunes de los libros. Una vez que los instalemos solo tenemos que Arrastrar y Soltar a Calibre. Luego Convertir el libro a MOBI y listo.

Calibre - Menú de Convertir Libros
Calibre – Menú de Convertir Libros
Calibre - Convertir Libro a MOBI
Calibre – Convertir Libro a MOBI

Y es todo amigos, con esto tendrán un libro descargado en SafariBooks al Kindle.

Ubuntu en Windows 10

Anteriormente hablábamos de Kalilinux en Windows 10 y el uso WSL de Windows 10 ahi mostramos como ejecutar un Escritorio completo por medio de Escritorio Remoto o Remote Desktop, de esta manera poder hacer uso de aplicaciones con GUI y realizar la mayoría de las actividades y ahorrar la ejecución de una maquina virtual con las ventajas que eso conlleva.

Hoy mostrare como realizar exactamente el mismo procedimiento aplicado en KaliLinux pero con Ubuntu y están simple como ejecutar el siguiente script:

 

sudo apt-get update
sudo apt-get install -y xfce4 xorg xrdp
sudo sed -i s/port=3389/port=3390/g /etc/xrdp/xrdp.ini

 

Por ultimo, ejecutamos sudo /etc/init.d/xrdp start para uniciar el demonio para podernos conectar por escritorio remoto. Finalmente ejecutamos Escritorio Remoto de Windows que tanto conocemos con la ip 127.0.0.01:3390 y ya esta.

Escritorio Remoto
Escritorio Remoto con la IP 127.0.0.1:3390

Y es todo amigos, solo recuerden detener el demonio una vez que terminen de usarlo con: sudo /etc/init.d/xrdp stop