Conectar qBittorrent con n8n

En esta entrada te enseño a conectar qBittorrent con n8n para automatizar tu descarga de películas y series.

qBittorrent y n8n

En una de las últimas entradas te enseñé cómo automatizar la descarga de películas y series con qBittorrent, al menos en gran parte. Como te comenté, decidí no utilizar la suite «Arr» para simplificar la instalación. En parte, esto lo hice porque tenía pensado integrarlo con n8n a través de la API que expone, y crear algunas automatizaciones.

A continuación te voy a enseñar dos formas de hacerlo (una muy simple y otra un pelín más compleja), y a darte algún ejemplo de lo que puedes conseguir.

Nodo de la comunidad

Si eres usuario de n8n, ya sabrás que, además de los nodos oficiales, también puedes instalar nodos de la comunidad. Digamos que estas son funciones «extendidas» (algo así como las integraciones de HACS en Home Assistant).

Pues la forma más sencilla de conectar qBittorrent con n8n es utilizar este nodo de la comunidad, que te va a permitir listar los torrents que tienes agregados, o añadir alguno a la lista de descargas desde n8n.

Esto te puede resultar muy útil, si puedes pasarle los enlaces desde otras herramientas, como por ejemplo, desde una hoja de Google Sheets, un grupo de Telegram o scrapeando una web. Para instalarlo solo tienes que:

  1. Abrir la interfaz de n8n, e ir a Settings > Community nodes > Install.
  2. Introduce ‘n8n-nodes-qbittorrent’ en el campo «npm Package Name», acepta las condiciones y pulsa en «Install».
  3. Listo! Ya puedes encontrar estos nodos en cualquiera de tus workflows.
  4. Para conectarlo con qBittorrent, tendrás que añadir las credenciales correspondientes:
    • URL. Esta es la IP local del servicio, incluyendo el puerto (por ejemplo, ‘http://192.168.1.125:8090/‘).
    • Username. Tu usuario de administrador.
    • Password. La contraseña de tu cuenta.

Llamadas a su API

La anterior es la forma sencilla de conectar qBittorrent con n8n, pero para mi gusto es un poco limitada. Ten en cuenta que qBittorrent expone una API con un montón de opciones útiles (puedes consultarlas todas en su documentación). Por ejemplo, te permite buscar contenido (haciendo uso de los plugins que tengas instalados).

⚠️ Recuerda, utiliza buscadores de contenido LEGAL!

Sinceramente, a día de hoy no necesitas entender esta documentación. Basta con que se la pases a cualquier IA y le expliques lo que quieres conseguir para que te vaya guiando. No obstante, como principios generales, cabe destacar que para explotar la API primero tienes que hacer «login» en qBittorrent para que te genere una «cookie» que luego vas a utilizar en tus llamadas.

💡 Al final del artículo te comparto un flujo, que contiene todos los pasos necesarios.

Por ejemplo, a mí me ha parecido interesante crear el siguiente flujo:

  1. He creado un bot de Telegram (conectado con n8n) y le he añadido un comando ‘/media’. Este desencadena un flujo, cuyo primer paso es decirme «¿Qué quieres ver?».
  2. Mi siguiente mensaje será recogido por n8n como el contenido que quiero buscar (por ejemplo, «La noche de los muertos vivientes»). Haciendo uso de la API de qBittorrent, realizará una búsqueda del contenido disponible.
  3. Si no encuentra nada, me responderá «No he encontrado resultados», pero si encuentra algo, me pasará los resultados (con el límite que indique) en un mensaje que contiene el cartel de la película, título, sinopsis, puntuación, tamaño del fichero… y dos botones, uno para confirmar la descarga y otro para descartar ese resultado.
💡 Para añadir la información de la película he utilizado la API gratuita de TMDB.
  1. Si pulso el botón de descarga, el enlace pasa directamente a qBittorrent para que comience la descarga. Si lo descarto, simplemente elimina el mensaje del chat.

Aunque he simplificado un poco la explicación del flujo, a continuación te dejo una captura con todos los nodos que lo componen (y también puedes descargar el flujo completo desde nuestro perfil de Patreon).