Дмитрий Сергеевич (axshavan) wrote,
Дмитрий Сергеевич
axshavan

Category:

Поменять User-Agent в Deluge

Как поменять UserAgent в битторрент-клиенте Deluge?

Во-первых, надо сперва сказать, зачем это вообще делать. Некоторые трекеры не любят β и RC-версии и не позволяют ими пользоваться. А один мой знакомый трекер вообще взял да и забанил все версии Deluge после обнаружения там критический уязвимости. Или есть маргинальные трекеры, которые позволяют скачивать с них только определённым клиентам. Так что или поднимай wine или виртуальную машину, и ставь туда рекомендованный клиент, либо - подменяй юзерагент, чтоб твой битторрент-клиент выдавал себя за другого клиента.

Что такое юзерагент? Это строка, которую клиент отправляет на трекер, представляясь таким образом. У битторрент-клиентов юзерагент, как и у веб-браузеров, тоже есть. По этой строке трекер и идентифицирует клиента. Эвристические методы определения клиента по особенностям работы с протоколом неточные.

Описанный ниже метод вполне подходит для Linux, и для Windows, и для MacOS, и вообще для любой операционной системы, на которой работает Deluge. Этот битторрент-клиент написан на питоне, его исходники поставляются вместе с ним, так что главной проблемой будет просто их найти, чтоб внести соответствующие правки. Под линуксом это сделать наверняка сложнее, потому что они могут быть засунуты вообще хер знает куда, в зависимости от остроумия разработчиков и ментейнеров дистрибутива. Под виндой наверняка где-то есть папка C:/Program files/Deluge, где всё и хранится.

Так вот, нам нужен файл core.py. В моём дистрибутиве линукса (LMDE/Debian7) я нашёл в папке /usr/lib/python2.7/dist-packages/deluge/core симлинк на сам файл: /usr/share/pyshared/delude/core/core.py. Открываем его и ищем self.settings.user_agent. Дальше всё понятно или надо расписывать? :)

У меня сделано вот так:
# Set the user agent
self.settings = lt.session_settings()
#self.settings.user_agent = "Deluge %s" % deluge.common.get_version()
self.settings.user_agent = "Transmission/2.77 (14031)"

Не забудьте рестартить Deluge, чтоб он подцепил изменения. Особое внимание уделите пробелам в начале строк; это python, так что лишний или недостающий пробел порушат всю программу.

Оригинал записи http://blog.axshavan.ru/2013/09/deluge-change-user-agent.html
Tags: *nix
Subscribe

  • Размышления про материалы

    Восседая на троне в специальной комнате, я призадумался о свойствах туалетной бумаги и о том, чем можно её заменить. Очень часто бывает, знаете, что…

  • Dracula

    Вчера вечером наконец-то дочитал до конца «Дракулу» на английском. Правильнее будет сказать «продрался до конца». Чтоб я да ещё да какую-нибудь…

  • Завтрак

    С каждой годовщиной ведения своего ЖЖ я к посту со статистическими данными обычно добавляю подборку ссылок на мои посты за прошедший год, которые…

  • Post a new comment

    Error

    Comments allowed for friends only

    Anonymous comments are disabled in this journal

    default userpic

    Your reply will be screened

    Your IP address will be recorded 

  • 0 comments