Automatizar las descargas de series con rTorrent, FlexGet y RSS
Desde hace ya unos años se ha puesto muy de moda la descarga de series de televisión. Yo descargo principalmente series americanas, pero también algunas inglesas y anime japonés, aunque el anime lo bajo de fansubs de toda la vida y no como voy a explicar aquí. Bajar las series de internet tiene muchas ventajas:
- Inmediatez: tengo los episodios pocas horas después de su emisión en EEUU (por poner el ejemplo más común) y no tengo que esperar a que algún canal español los emita aquí.
- Sin anuncios: no hay nada que me corte más el rollo cuando estoy viendo series o películas que las dichosas interrupciones publicitarias, que además son laaaaargas.
- Versión original: llamadme friki, pero para mí no hay nada como ver las cosas en su versión original, cada vez me gusta menos el doblaje. Lamentablemente mi nivel de inglés no es perfecto y tengo que tirar de subtítulos en español (o en inglés en ocasiones), pero aun así merece la pena. Ahora con el TDT existe la posibilidad de disfrutar de la VOSE en la tele, pero muchas veces los subtítulos son cutres a más no poder.
- Sin horarios: veo la series cuando puedo y quiero, y no cuando le sale de las narices al que decida la programación de los distintos canales.
- Calidad: siempre descargo en alta definición (720p en el caso de las series), así que la calidad es mejor que en la mayoría de los canales españoles.
Como ya comenté en rTorrent: cliente de BitTorrent en modo texto para linux, ahora que Megaupload ha caído está aumentando el uso de las redes P2P, especialmente BitTorrent. Así que entre la moda de las series y el auge de BitTorrent, espero que este post le sea útil a mucha gente. En él explicaré cómo hacer para no tener que bajar las series, sino que se bajen ellas solitas gracias al uso de FlexGet, un feed RSS y rTorrent (o cualquier otro cliente BitTorrent).
Instalación de FlexGet.
Si no tenéis instalado Python 2.5.x-2.7.x, hay que instalarlo. Y también easy_install (paquete python-setuptools):
sudo apt-get install python2.6 python-setuptools
A continuación se instala ya FlexGet, verificando que se han hecho correctamente:
sudo easy_install flexget flexget -V
Configuración.
Ahora viene la miga del asunto: configurar FlexGet para que se baje las series que seguimos habitualmente. Hay que proporcionarle un feed RSS de donde sacará los torrents a bajar, una lista con todas las series que queremos y un directorio donde descargar el fichero .torrent, que en este caso será ~/rtorrent/torrents. Ya expliqué en rTorrent: configuración y uso cómo hacer para que cualquier torrent que se meta en ese directorio se empezara a descargar automáticamente, así que una vez copiado solo quedaría esperar a que termine la descarga.
FlexGet tiene muchas opciones, pero yo me voy a limitar a explicar mi configuración, que creo que será suficiente para la mayoría. Si alguien quiere profundizar más o tiene otras necesidades, que le eche un vistazo al enlace anterior. Para empezar a configurar hay que abrir el fichero ~/.flexget/config.yml:
nano ~/.flexget/config.yml
Este es el aspecto que tiene el mío:
feeds: Series HDBits: rss: feed_rss_de_los_torrents series: - alcatraz - californication - castle - community - dexter - doctor who - entourage - episodes - fringe - futurama - game of thrones - glee - house - how i met your mother - misfits - mr sunshine - new girl - sherlock - supernatural - the big bang theory - star wars the clone wars - the it crowd - torchwood - two and a half men - the walking dead content_size: min: 200 max: 3000 content_filter: reject: '*WEB-DL*' download: ~/rtorrent/torrents
- Series HDBits es simplemente el nombre que le he puesto yo, podía haber sido cualquier otro.
- En rss iría el feed que elijáis para descargar, yo uso el de HDBits, que es un tracker privado americano donde hay películas y series exclusivamente en alta definición (el paraíso, vamos). El feed tiene que proporcionar el torrent directamente, no un enlace que lleve a una ficha del episodio o algo así (en HDBits, por ejemplo, tienen de los 2). Si no sabéis de dónde sacar un feed de estas características, podéis configuraros uno vosotros mismos en showRSS, una web desde la que podéis elegir las series que os interesan y generar un feed solo con esas series.
- series es el listado de las series que yo veo (sí, todas esas). El guión es necesario, igual que los dos puntos que hay por todo el fichero.
- content_size permite especificar un tamaño de fichero mínimo y máximo, yo lo uso sobre todo para evitar descargar packs de temporadas o series enteras, aunque realmente FlexGet no debería dejar que eso pasara.
- content_filter añade filtros adicionales. Con reject se especifica una cadena de texto que hace que el torrent se rechace si la lleva en el nombre. Yo, por ejemplo, no quiero bajar los WEB-DL, a pesar de su mayor calidad (sonido 5.1, no sale el logo del canal...) porque ocupan más y, sobre todo, porque luego me vuelvo loco para encontrar los subtítulos.
- download es la carpeta donde se copiará el torrent, como ya habréis imaginado.
Ejecución.
Una vez configurado, recomiendo comprobar que todo está bien con:
flexget --check
También se puede hacer una prueba de ejecución sin que realmente se ejecute. Esto viene bien para ver la salida en pantalla del programa, pero sin tener que descargar nada por el momento:
flexget --test
Ejecutarlo normalmente no tiene mucho misterio:
flexget
Pero claro, hacer esto así sería un coñazo de tomo y lomo, así que mejor dejarlo programado para que se ejecute cada cierto tiempo:
crontab -e
Y añadimos esta línea:
*/10 * * * * flexget -q > /dev/null 2>&1
De esta forma flexget se ejecutará cada 10 minutos. Yo lo pongo cada así para que pase el menor tiempo posible entre que salga el torrent y yo empiece a bajarlo, que mantener el ratio en HDBits no es tarea fácil; pero eso ya va a gusto del consumidor. La parte de > /dev/null 2>&1 sirve para eliminar la salida del comando. También se puede poner > fichero_log y se guardaría en un fichero por si se quiere mirar en el futuro en caso de que haya algún problema.
Por último, si queréis automatizar las descargas de series y no usáis linux, sino Mac, os puede venir bien leer TVShows 2 y Transmission, la forma más cómoda de bajar series, que @alvaroprb escribió allá por enero.
26 comentarios
Cómo mola FlexGet. Yo uso un script llamado Synclosure que sirve para descargar ficheros incluidos en feeds con un feed de showRSS, y un script propio que copia el fichero torrent al directorio de rTorrent. Pero me parece que me voy a pasar a FlexGet como solución aún más simple que la mía, visto lo visto.
Me alegro de que te haya gustado. Quizá haya métodos aun mejores, pero a mí este desde luego me está funcionando a las mil maravillas. Además uso algunos scripts propios para:
- Pasar a minúsculas los nombres de los ficheros (por homogeneidad).
- Copiarlos en una carpeta accesible vía web.
- Crear un fichero con los enlaces a los episodios del día (en otra carpeta accesible vía web).
Y en el Mac tengo otro script que al ejecutarlo se baja la lista de ficheros y empieza a bajarlos con wget. El día menos pensado automatizo esto también.
Buenas!!
Muy interesante el artículo, yo lo que aun no he conseguido (aunque debo reconocer que tampoco me he aplicado mucho) es algo para descargar automáticamente los subtítulos (desde subtitulos.es por ejemplo) y que no tenga que hacerlo a mano... el problema es que si intentas descargar el subtítulo con wget o similar, te descarga un html pero no el sub, y no tienen ni rss ni api... 🙁
Yo los subtítulos de momento los bajo a mano precisamente de subtitulos.es, es lo que me resulta más rápido. Aunque también está por ahí SolEol, pero tardan más en estar disponibles y yo suelo ver las series el mismo día en que las descargo.
No deja de ser un coñazo :P. Alguna manera tiene que haber para poder descargarlos directamente... programadores vagos al poder!
Y algun rss de torrents asi completito??
Ya menciono en el post showRSS como solución para montar tu propio RSS personalizado.
¿Habéis probado Subdownloader?
No lo había probado hasta ahora. No está nada mal. Me gusta, por ejemplo, la opción de escoger una carpeta y que busque subtítulos para todos los vídeos que haya en ella. Pero he probado con mi carpeta de series pendientes y hay series de las que no ha encontrado nada en español.
El problema que le veo es el mismo que a SolEol: ambos usan opensubtitles.org como fuente y allí faltan muchos episodios por traducir al español.
Y si ya te pones en el teléfono Transdroid ( http://www.transdroid.org/ ) controlas todo o casi todo desde el sofa de la sala. 🙂
Buena opción para quien tenga android, que no es mi caso. Otra buena opción que además es válida para todos es usar ruTorrent, una interfaz web para rTorrent de la que ya hablé en su día. Aunque lo cierto es que yo sigo usando SSH desde el ordenador de sobremesa o desde el iPad.
La opción de ssh la uso desde el grande, porque desde el teléfono me resulta incomodo y por eso busque Transdroid.
Sí, yo desde el móvil paso también, muy incómodo. Afortunadamente suelo tener el iPad a mano.
Hola a todos,
muy interesante el articulo y el blog (ya lo añadí a mis feeds!).
Tengo un ordenador con un Ubuntu Server con unn Plex Media Server, Transmission daemon, etc etc y me interesaria muchisimo llegar a configurar FlexGet como un daemon. Mas que otro mis dudas son sobre temas de usuario y de permisos. Es posible executar el chron como nobody:nogroup?
Por cierto, habeis probado filebot para renombrar pelis/series y bajar subtitlos?? Yo lo estoy probando y para las series está genial!
Muchas gracias, me alegro de que te haya gustado.
No creo que haya ningún problema en ejecutar cron como usuario nobody, en teoría debería poderse con sudo crontab -e -u nobody, aunque no he probado.
Filebot no lo conozco, le echaré un vistazo.
hola me párese fantástico esta publicación
siguiendo como patron el tutorial que muestras hice el mio propio pero me da unos errores cuando pongo el --check
este es mi config.yml
y el error que me da el --check
----> MOST LIKELY REASON: Missing : from end of the line!
Check configuration near line 20, column 14
Fault is almost always in this or previous line
realmente es mi primera experiensia ,
gracias de antemano
salu2
Parece un problema de espacios, las líneas:
quality: <=720p content_size: [/consola] Deberían estar a la misma altura que [consola type="inline"]series[/consola] (mismo número de espacios antes). Flexget es muy quisquilloso con estas cosas.
¡Buenas!
Muy buen tutorial 🙂
Pero a mi el "reject" del "WEB-DL" no me funciona! :S
¿Porqué puede ser?
¡Gracias!
Mil gracias.
Sin ver el fichero de configuración no sé cuál puede ser la causa, pero por probar que no quede. Asegúrate de que incluyes también la parte de content_filter:. Y ojo con los espacios, que son importantes y pueden dar problemas como te descuides, cada «escalón» hacia la derecha en el fichero son dos espacios. Yo te aconsejo que copies y pegues el fichero que he puesto de ejemplo y vayas modificando lo que no corresponda (la dirección del feed, las series...). A ver si hay suerte y consigues solucionar el problema.
me ocurre lo siguiente:
miguel@miguel-System-Product-Name:~$ flexget --check
2013-06-15 16:09 INFO manager Tried to read from: /usr/local, /home/miguel/.flexget, /home/miguel/.config/flexget
2013-06-15 16:09 CRITICAL main Failed to find configuration file config.yml
2013-06-15 16:09 INFO manager Tried to read from: /usr/local, /home/miguel/.flexget, /home/miguel/.config/flexget
2013-06-15 16:09 CRITICAL main Failed to find configuration file config.yml
miguel@miguel-System-Product-Name:~$
agradeceria algo de ayuda gracias. se me olvidaba estoy usando ubuntu 12.10 con el escritorio de kde
El error que te da indica que FlexGet no encuentra el fichero de configuración config.yml. Asegúrate de que el nombre es correcto y de que está en la carpeta /home/miguel/.flexget/.
Pues por lo visto no existe el archivo?. Que puedo hacer?,es algo raro no ?.gracias por la ayuda
Es normal, tienes que crearlo tú. En el apartado «Configuración» de este post explico cómo hacerlo y qué tengo yo en ese fichero como ejemplo.
bueno pues por lo visto no me aclaro,gracias por el articulo y por la ayuda,un saludo
Buenas MIguel,
Al final he dejado FlexGet de lado y me he pasado a Sick Beard con Torrents https://github.com/xbianonpi/Sick-Beard-TPB
Tiene una interficie web muy buena y es todo muy fácil y cómodo de configurar. ¡Encima de baja los subtítulos también!
¡Un saludo!
Quería saber si conocéis feeds para poder descargar series en español, he estado buscando y no encuentro.