Введение
Думаю, многие из вас, любят кино. Как в форме походов в кинотеатр, так и в форме уютного домашнего просмотра, на любимом медиаплеере. Если с первым все относительно просто, то со вторым же возникают некоторые нюансы, которые можно разделить на следующие категории:
- Выбор
- Скачивание
- Просмотр
- Каталогизация
Чисто теоретическую их часть я затрагивал в первом посте. В этот раз, хотел бы поделиться c вами, уважаемые читатели, одним из вариантов практической реализации первого из пунктов, а именно, удобного сервиса по отслеживанию киноновинок.
Во избежание возможных споров, хочу сделать небольшое заявление, что вся статья имеет сугубо субъективный характер и отражает только мнение автора. Я никоим образом не навязываю вам свое мнение. Если я назвал какой то сервис удобным, то для вас он может таковым не являться, и наоборот.
Существующие реализации. Чем же они плохи?
И так, первый этап: Выбор. Задача следующая: На входе имеем список новых рипов, выложенных с момента вашего последнего входа, на выходе нужно получить список закачек для вашей торентокачалки.
Данная тема далеко не нова, и существует множество ее реализаций. Уверен, что у многих есть свой эксклюзивный наработанный метод, позволяющий в «3 клика», или может даже полностью автоматически выбрать интересное кино. В данном посте, я хотел бы представить вам свой вариант.
В чем я вижу минусы существующих реализаций? Постараюсь перечислить:
- Дублирующиеся посты. Т.е. вышел фильм в DVDRip, вы его скачали, либо не скачали, отлично. Завтра вы открываете страницу, а там снова он, но уже в HDRip. Еще через день опять он перед глазами, но уже в BDRip. Т.е. полезная и неполезная информация идут вперемешку. А тут недалеко и что-нибудь интересное упустить из вида.
- Слабая визуализация. Зачастую RSS ленты не дают нам прочуствовать атмосферу фильма. Да, там есть обложка, описание, скрины. Но почему бы не добавить фоновый рисунок и трейлер? Вообще, торрент треккеры подают материал с фильмами в том же формате, что и Программы, Книги, Игры. Но ведь фильмы заслуживают отдального оформления. Чего стоит тот же XBMC. Стал бы он таким популярным, если бы выглядел как форум?
- Требуют большого времени и внимания. Данный пункт является следствием первых двух. Если вы подписаны на ленту (ленты) или просто просматриваете ветку с киноновинками, то от вас требуется недюжая концентрация внимания, чтобы в этом потоке текстовой информации выцепить пару интересных веток. Потом надо зайти в кинопоиск, чтобы просмотреть трейлер. А учитывая кол-во низкосортного кино, вам потребуется приложить немало усилий.
- Локальность / Ограниченность. Возможно, есть очень удачные домашние реализации, но часть из них развернута на домашних серверах, и недоступна остальным, либо развернута на бесплатных решениях, с ограниченным кол-вом трафика, которые в любой момент могут стать недоступны
Предлагемая реализация
Представляемая реализация никоим образом не тянет на революционность. Это лишь сервис, созданный для себя, но при этом, доступный каждому. Возможно, кто-то из вас увидит в нем потенциал, и даже сочтет его удобным.
Преследуемые цели:
- Экономия времени
- Максимально возможная визуализация информации
- Группировка фильмов. Каждый фильм появляется в ленте только один раз
- Показ трейлера непосредственно на странице
- Визуальное оформление в стиле XBMC
- Так же, я старался не притеснять сами источники. Т.е. для скачивания, вам все же потребуется перейти на страницу треккера. Были мысли по использованию магнитных ссылок, но пока не все их признали, да и будет ли это честным по отношению к самим треккерам. (Если у вас есть идеи, как сделать так, чтобы «и волки сыты, овцы целы», то буду рад услышать)
- Дружелюбный к мобильным устройствам интерфейс
Ну, что ж, достаточно слов. Лучше один раз увидеть, чем сто раз услышать.
Милости прошу: KinoTrek.
Сайт развернут на бесплатной Dyno x1, так что хотя я и старался максимально снизить нагрузку на сервер, хабраэффект он вряд ли выдержит. Прошу вас проявить терпение.
Как пользоваться?
Наиболее оптимальным, на мой взгляд, является следующий сценарий:
- Раз в день заходите на KinoTrek. Для экономии времени, это можно делать в свободные минуты с телефона/планшета
- Пробегаетесь глазами по обложкам
- Получаете детали по наиболее интересным для вас фильм. Смотрите трейлер и принимаете решение: Качать или нет
- Определяетесь с качеством и переходите к странице трекера
- Скачиваете торент файл на облачный диск, за которым следит ваша торентокачака
- Вечером наслаждаетесь просмотром
Техническая составляющая
Как многие уже успели заметить, сайт развернут на удобном сервисе Heroku. Бесплатной квоты вполне хватает для решения весьма широкого спектра задач.
В детали реализации вдаваться, думаю, будет излишним, так как никакого ноу-хау тут нет. Всего лишь несколько технологий, примененных вместе. Для интересующихся, вот ссылки для старта:
- habrahabr.ru/post/59270/
- habrahabr.ru/post/205238/
- habrahabr.ru/post/159631/
- devcenter.heroku.com/articles/getting-started-with-python
Схема работы следующая:
- Фоновый процесс раз в 1 час парсит страницу с киноновинками рутрекера и определяет новые посты
- По названию фильма идет поиск в базе фильмов www.themoviedb.org/. Если фильм новый, то вытягивается информация о фильме, если нет, то в существующий фильм добавляется новый источник
- Веб процесс выдает статичную страницу, которая аяксом вытягивает ленту с фильмами
Заключение
Сайт запущен лишь недавно, и сейчас он на стадии открытой беты. Буду рад любой конструктивной критике, замечаниям и предложениям по модернизации.
Ну вот и все, уважаемые читатели. Спасибо за уделенное статье время.
Использованные компоненты и полезные ссылки:
- Twitter Bootstrap
- Визуальное офомрление для Twitter Bootstap
- XBMC
- API TMDB
- Библиотека Python для работы с TMDB
- Heroku.com
- MongoDB
- Flask
Автор: ChesterOne