Hoy, a través del twitter de Adafruit me he enterado de que O’Reilly tenía disponibles más de 243 eBooks sobre informática y programación gratis desde su web.

Como hace poco “liberaron” eBooks de manera similar, y me costó un rato hacerme con todos los links y descargar los eBooks, esta vez opté por automatizar el proceso. Para ello, usé Python y Beautiful Soup para extraer de forma automática los links de la web de O’Reilly (y ya de paso no tener que logearme).

El script es sencillo, busca las distintas categorías a partir de la página principal y dentro de cada categoría busca los libros que aparecen disponibles. Una vez se tiene la url de la página de cada libro, con una sencilla modificación se obtiene la url del libro en pdf, mobi y epub. Todas estas urls se guardan en un archivo books.txt. Además, como ya tenía descargados algunos de ellos de la vez anterior, he añadido una pequeña comprobación. Si encuentra en la carpeta desde la que se lanza el script un archivo con el mismo nombre que el archivo a descargar, lo ignora.

Una vez se tiene el archivo books.txt con el listado de links, se puede usar un programa como wget o curl para descargar de forma automática todos los links.

Este script está disponible en un Gist para todo el que quiera usarlo o simplemente echarle un ojo: