Utorrent settings dat чем открыть

Обновлено: 02.07.2024

На одном трекере я являюсь активным сидером. Но когда приходит время обновлять раздачи, для меня начинается ужас: некоторые раздачи имеют разные название в торрент-клиенте и на трекере, раздач с идентичным названием на трекере очень много, да и искать какую-то конкретную раздачу очень трудно. К тому же у меня нет столько времени, чтобы заниматься таким рутинным делом. Поэтому мне понадобился небольшой скрипт, который бы обновлял раздачи в клиенте, при обновлении оных на трекере.

Что же делать?

Передо мной встала задача: найти какое-нибудь готовое решение или же попробовать написать нужный скрипт самому. На хабре встречались способы, в некотором роде выполняющие мою задачу, но способ либо мне не подходил, либо он мне не совсем нравился. При этом я никогда не писал программ или даже скриптов, поэтому вариант собственноручно написанного скрипта мне нравился ещё больше. Сначала надо было выбрать инструмент, язык, который был бы лёгок для освоения и погружения в программирование, и моё внимание привлёк python.

Python мне сразу понравился. Кажется, что он придаёт некую «легкость» в написании кода. Как первое чтиво по python'у я выбрал книгу Марка Лутца «Изучаем Python (4-е издание)». Что ж, инструмент есть, какая-никакая помощь в виде книги есть, поехали!

Постановка задачи и её решение

Итак, для начала нужно определить, что торрент-файл в нашем клиенте (в данном случае имеется в виду uTorrent 2.2) устарел и надо скачать новый. Первое, что я смог придумать, — парсинг страниц и сравнение с данными в торрент-файле. Такой способ работал, но у него был огромный минус в быстродействии: парсинг ста страниц, а именно такой лимит раздач на трекере, занимал около трёх минут. К тому же надо было все параметры раздачи сравнивать с результатом парсинга страницы, а это тоже отнимало немало времени. Такой метод работал без сбоев, но мне он не особо нравился, поэтому я продолжил поиски всевозможных решений поставленной задачи.

Вскоре, после долгих раздумий и поисков, я узнал о такой вещи как scrape. Scrape, как говорит википедия, — это дополнительный протокол запроса клиента к трекеру, при котором трекер сообщает клиенту общее количество сидов и пиров на раздаче. При помощи scrape-запроса можно легко узнать о том, существует ли раздача или нет. Также scrape-запрос клиентами посылается чаще, чем announce. Но надо знать, поддерживает ли конкретный трекер этот протокол или же нет. К моему счастью, мой трекер его поддерживает. Scrape-запрос посылается при помощи метода GET с заголовком и вот так выглядит адрес, по которому идёт запрос:

Хэш уникален для каждой раздачи, он включает в себя 20 символов и его можно достать из файла resume.dat. Но прежде, чем доставать информацию, надо знать, что этот файл, как файлы с расширением .torrent и settings.dat, представлены в формате bencode. Если нужно расшифровать файл быстро и без углублений в способ кодирования, то стоит скачать специальный пакет для питона здесь.

Приступим к расшифровке файла:


Теперь у нас на руках есть словарь с именами и хэшами раздач. Теперь нам остается только посылать scrape-запросы с подставленным и видоизменённым хэшем и проверять, есть ли раздача с таким хэшем на трекере или её уже нет. Также не стоит забывать о том, что делать такой запрос нужно как бы от лица клиента, иначе трекер откажет в доступе.

Обычный ответ на запрос выглядит так:

d5:filesd20:aaaaaaaaaaaaaaaaaaaad8:completei5e10:downloadedi50e10:incompletei10eeee
20 символов «a» — это хэш раздачи, 5 — сидеров, 10 — личеров и 50 закончивших качать.
Если же раздача не существует, то ответ на запрос принимает вид:

Ответ на запрос тоже представлен в формате bencode, но расшифровывать нам его не надо, можно просто сравнить полученную строку со строкой, возвращаемой в случае отсутствия раздачи на трекере с таким хэшем.
Далее надо скачать наш файл с трекера, положить его в папку автозагрузки клиента и, по возможности, удалить запись об устаревшем торренте в самом клиенте.
С трекера просто так скачать файл не получится: нужна авторизация. Сама функция описана выше под заголовком «authentication». А далее мы авторизируемся, скачиваем файл, кладём его в папку автозагрузки и удаляем старый .torrent файл из папки с торрентами.

Чтобы уже несуществующий .torrent файл не путал нас своей записью в клиенте, его стоит удалить из клиента. Но uTorrent устроен так, что редактирование resume.dat, а именно там хранятся сведения о всех торрентах, при запущенном клиенте не даст результата: uTorrent восстановит resume.dat таким, каким он его запомнил при запуске. Поэтому для такого случая нужно постоянно выключать uTorrent, редактировать resume.dat, включать uTorrent. Такой метод подошёл бы для одной изменённой раздачи в день, а что если раздачи меняются пачками, т.е. по несколько сразу? Сначала я, будучи далёк от программирования в целом, думал о том, что придётся работать с процессами напрямую, а это очень сложно для меня. Но тут я узнал о существовании uTorrent WebUI. У WebUI есть API, документация к которому есть на официальном сайте. Благодаря возможностям API WebUI можно удалить запись, и не только удалить, о торренте из клиента. Сначала мы должны получить cookie, в которых есть специальный пароль, и token. Второе нам необходимо, если параметр webui.token_auth в клиенте активирован.

В uTorrent авторизация в web-интерфейсе реализована не так, как на сайте, поэтому простая отправка данных не пройдёт. Затем мы получаем токен и вместе с ним выполняем какую-нибудь функцию в клиенте. Конечно, можно было бы выделить класс под действия в клиенте, но я посчитал, что для этого хватит и обычной функции.
(Прим.: К сожалению, моих знаний на данный момент не хватило, чтобы правильно авторизироваться в web-интерфейсе, поэтому я воспользовался способом, описанном на просторах интернета.)

Что в итоге

В итоге я получил скрипт, удовлетворяющий мою потребность, немного знаний и море удовольствия: очень весело до утра сидеть над кодом, а потом, когда ляжешь спать, понять, в чём была загвоздка.

Надеюсь, данный способ сможет кому-нибудь помочь.

UPD: Дико извиняюсь за свою невнимательность: приводил код в более читаемый вид перед публикацией, в результате чего и сам запутался, и вас запутал.
Код залил на Github. Работаю с ним впервые, так что, если я сделал что-то неправильно, обращайтесь.

По умолчанию в uTorrent файлы *.torrent и файлы настройки находятся в скрытой папке:
Windows XP:
Метка тома: \Documents and Settings\<Имя пользователя>\Application Data\uTorrent
Windows Vista\7:
Метка тома: \Users\<Имя пользователя>\appdata\roaming\uTorrent
Или из командной строки:
Пуск → Выполнить → %AppData%/utorrent → Enter

Порядок действий для продолжения сидирования и сохранения настроек с наименьшими затратами:

1. До переустановки Windows, папку uTorrent нужно переместить в иное место, которое при переустановке не будет затронуто (CD-RW или DVD-/+RW диск, флешка (USB Flash Drive), внешний USB-винт, или другой логический диск)
2. Нужно сохранить скаченные релизы (фильмы, образы, архивы и другое).
Настройка места, где хранятся загружаемые и загруженные файлы, а также .torrent файлов расположена в uTorrent → Настройки → Папки.
При скачивании файлов можно выбирать место их размещения, поэтому они могут находится и в другом месте.

3. Переустановить Windows XP и Vista/7.
4. Установить uTorrent, закрыть его.
5. Затем нужно вернуть файлы настройки uTorrent.
6. Можно запускать uTorrent, все настройки и *.torrent файлы были сохранены.
Даже не обязательно производить хеширование скаченных релизов.

Если при старте utorrent.exe обнаруживает settings.dat в этой же папке (рядом с utorrent.exe), то использует эту папку для всех своих файлов настроек.
Это можно использовать для:
- упрощения переноса uTorrent при переустановке Windows.
- использования нескольких копий uTorrent с независимыми настройками (их можно даже запускать одновременно).

Пояснения назначения файлов:

settings.dat, settings.dat.old - настройки программы.
resume.dat, resume.dat.old - информация о заданиях.
.old файлы - постоянно обновляемые резервные копии.
Если внезапно выключился компьютер и в клиенте пропали все задания, надо попробовать заменить файл resume.dat файлом resume.dat.old.
rss.dat, rss.dat.old - данные о rss.
dht.dat, dht.dat.old - база dht.
ipfilter.dat - "черный список" (адреса нежелательных пиров).
utorrent.lng - языковой файл
И наконец сами .torrent файлы заданий (если в настройках не указано иначе).

Если перед переустановкой Windows ничего не было сделано или произошли другие проблемы:

Правильная настройка торрент-клиента uTorrent Ссылка на установщик uTorrent 2.2.1 - https://drive.google.com/folderview?id=0B6jQJwDBQv5oUUxBanAzYVkyaGM&amp;usp=sharing

А как настроить Метки в новых версиях программы в старых все норм работало а вот в новых не хочет все как обычно сделал в дополнительном добавил метки Видео|Игры| и т.д и папки создал !! а она все равно качает тупо в папку общую =( не раскидывает по меткам =( а в инете нет описания на новые версии тока на старые =(

1. в инструкции не хватает настройки bt.sequential_files для полного счастья.

2. указывать папку для скачивания нет смысла, т.к. этот параметр всегда появляется и запоминается при добавлении новых торрентов.

3. распределять место сразу - в теории должно защитить от фрагментации, на практике с отключенной опцией: новые файлы обычно создаются нужного размера, экономит место если нет сидов или передумали качать.

если hdd не системный (установлено несколько физических дисков), имеет смысл отключить кэширование на запись. тогда разгрузишь оперативку и во время больших дисковых операций (если качаешь большую раздачу) он будет делать паузы в скачивании.

после первого скачивания свалило пару человек с раздачи, так что я думаю результат был бы одинаковый + - 1 минута. 3.2.2 - настройки по дефолту, 2.2.1 - настройки так в посте.

На страже вашего кошелька

На страже вашего кошелька Картинка с текстом, Юмор, DC Comics, Торрент, Мемы, Лига справедливости вселенная DC Comics, Пиратство, Amazon Prime, HBO, Utorrent, Netflix, Disney+


Великий выбор

Великий выбор Utorrent, Пираты, Реклама, Индиана Джонс, Торрент, Яндекс Браузер

За год «вечной» блокировки количество скачиваний с Rutracker осталось прежним.

За год «вечной» блокировки количество скачиваний с Rutracker осталось прежним. Пираты, Торрент, Utorrent, Rutracker, Блокировка, Длиннопост, Йохохох

По данным администрации Rutracker, активность файлообмена снизилась незначительно — на 5-10%. Количество скачиваемых торрент-файлов осталось на уровне одного миллиона файлов в сутки.

Также администрация подтвердила, что если с января 2015 года сайт посещало примерно 14 миллионов человек в месяц, то к январю 2017 года аудитория снизилась до семи-восьми миллионов в месяц.

Представители торрент-трекера объяснили, что за год уменьшилась аудитория, которая посещала сайт с мобильных устройств. Настроить обход блокировки с использованием VPN или анонимных-бразуеров на смартфоне или планшете оказалось сложнее, чем на компьютере.

Поскольку большинство пользователей используют методы для обхода блокировок оценить количество пользователей из России невозможно. Сами мы не запрашиваем данные по пользователям, а определить откуда сам пользователь, если он зашёл через анонимайзер или VPN невозможно.

Безусловно, подавляющее большинство пользователей из России попадают на сайт, используя методы обхода блокировок. По нашим оценкам, таких примерно 90%.

Читайте также: