web-dev-qa-db-fra.com

Comment contrôler un fichier torrent à télécharger élément par élément

Regardez cette img: enter image description here

Généralement, Transmission essaie de télécharger simultanément tous les éléments définis dans un fichier torrent. Par exemple, si nous avons 10 éléments dans un fichier torrent, après 1 heure, ils peuvent se situer dans une fourchette de 15% à 50% de progression (en fonction du taux de téléchargement).

Est-il possible de forcer Transmission à télécharger les éléments un par un: par ordre alphabétique ou par taille, etc. Je sais que je peux cocher/décocher les éléments manuellement comme vous le voyez dans l'image ci-dessus, mais je demande un moyen de le faire automatiquement.

1
mini

libtransmission a une API python, vous pouvez donc écrire tout ce que vous voulez ... mais non, cette fonctionnalité n'est pas intégrée.

Voici un exemple de travail

#!/usr/bin/env python3

import transmissionrpc

tc = transmissionrpc.Client('localhost', port=(9091))

torrents = tc.get_torrents()
for torrent in torrents:
  if torrent.status == 'downloading':
    low = []
    torrent_files = torrent.files()
    for item in torrent_files:
      low.append(item)
    high = []
    for item in sorted(torrent_files, key=lambda x: torrent_files[x]['name']):
      if torrent_files[item]['size'] - torrent_files[item]['completed'] > 0:
        high.append(item)
        break
    try:
      low.pop(low.index(high[0]))
    except:
      pass
    tc.change(torrent.id, priority_high=high, priority_low=low)    

J'ai mis en place un widget de bureau pour le faire pour moi ici .

2
RobotHumans