Категории

Язык
Окружение

23 октября 2015 г. 22:17 (ред. 23 октября 2015 г. 22:21)
Анонс torrentool 0.1.0 — нового инструмента для манипуляций над .torrent-файлами и не только.
Сегодня выпускаю пилотную версию пакета torrentool.

Модуль позволяет легко читать и модифицировать торрент-файлы из вашего приложения на Питоне.


from torrentool.api import Torrent

# Загружаем файл
my_torrent = Torrent.from_file('/home/idle/some.torrent')

# Узнаём URLы анонсирования на трекерах.
my_torrent.announce_urls
# Получаем общий размер файлов в раздаче.
my_torrent.total_size
# Получаем магнитную ссылку.
my_torrent.magnet_link

# Теперь проставим комментарий.
my_torrent.comment = 'Your torrents are mine.'
# И сохраним изменения в файл.
my_torrent.to_file()

Ввиду того, что торрент-файл представляет из себя данные в формате bencode, torrentool предоставляет также инструменты для кодирования и декодирования данных в этот формат. Кодировщик/декодировщик реализован прямо в приложении и не использует сторонние решения.


from torrentool.api import Bencode

# Согласно спецификации кодировать
# можно текст, целые, списки и словари.
Bencode.encode('some text') # Кодируем текст.

# Декодируем список.
Bencode.read_string('l4:spam4:eggse')

Приложение работает на Python 2.7+, 3.3+.
Для желающих принять участие в разработке/доработке — добро пожаловать на страницу torrentool на GitHub.

Ведь торренты — это и добро.