Comments 161
P.S. Через tor заработало только после небольшой правки кода.
def rutorLinks(filmID):
print("Загрузка торрент-ссылок для filmID " + filmID + ".")
if SOCKS_IP:
default_socket = socket.socket
socks.set_default_proxy(socks.SOCKS5, SOCKS_IP, SOCKS_PORT)
socket.socket = socks.socksocket
from sockshandler import SocksiPyHandler # from pysocks
opener = urllib.request.build_opener(
SocksiPyHandler(socks.PROXY_TYPE_SOCKS5, SOCKS_IP, SOCKS_PORT)
)
urllib.request.install_opener(opener) #NOTE: global for the process
Пример линка: http://nnm-club.me/forum/rss2.php?t&f=270,218,954&h=160
Добавил в любой RSS-ридер и быстро пролистал вечером за 3 минуты.
Ошибка здесь: «q=-BDRip».
http://nnm-club.me/forum/rss.php?f=661&q=BDRemux
Как вариант, можно фильтровать по размеру,
http://nnm-club.me/forum/rss2.php?t&f=661&h=160&z=20g
1. При этом я знаю только названия не устраивающего меня качества. Всё, что выше качеством — норм.
2. При этом в выборке также остаются те форматы, про которые я не знаю. Узнав про новый формат — решу, стоит ли добавлять в отсев.
3. При этом в выборке остаются «опечатки» с нормальным качеством: например, я получу какой-нибудь BDRemix. В противном случае, я бы его не получил. Т.е. либо получаю все «опечатки» (и нужные, и не нужные), либо не получаю никаких.
4. По размеру, боюсь, не подходит: размер бывает меньше заданного, потому что фильм короткий. Или WEBRip (и их аналоги): могут попасть в заданный размер, а в процессе просмотра попасть на артефакты.
4.1. Куплю телек 4К — стану смотреть только 4К — вот может тогда размер и пригодится. :)
Если что, мопед не мой…
Мы не можем узнать, какие фильмы вы ждете.
Сделайте на Кинопоиске хотя бы одну папку для фильмов публичной. После того, как вы это сделаете, вызовите принудительное обновление.
хотя публичные папки в профиле есть.
Нет, ничего плохого в этом нет, просто не совсем понятно что не устраивало в уже готовых решениях.
Т.е. отличие в том что автор отбирает фильмы непосредственно перед просмотром, а я отмечаю в trakt.tv то что хотел бы посмотреть и flexget присылает мне сообщение что один из этих фильмов он уже скачал и он ждет меня в plex =)
+ благодаря flexget есть возможность искать на разных трекерах
movies.sort(key = operator.itemgetter(«releaseDate»), reverse = True)
Сейчас там стоит:
movies.sort(key = operator.itemgetter(«ratingFloat»), reverse = True)
Если вы пилите такую штуку — может стоит сделать плагин к браузеру, который добавляет подобную кнопку на Kinopoisk?
// ==UserScript==
// @name Kinopoisk Adv Links
// @version 0.1
// @author FTOH
// @match https://www.kinopoisk.ru/film/*
// @grant GM_addStyle
// ==/UserScript==
(function() {
'use strict';
GM_addStyle (`#headerFilm { float: left; } #advLinks { display: inline-grid; margin: 22px; margin-left: 45px; } ` );
unsafeWindow.rutor = () => unsafeWindow.open('http://rutor.info/search/0/0/000/8/' + encodeURIComponent(unsafeWindow.headerFilm.innerText.replace(/\n|'/g, ' ').trim()), '_blank');
unsafeWindow.load = function(event) {
if(typeof unsafeWindow.headerFilm === 'undefined') return;
document.removeEventListener("DOMNodeInserted", unsafeWindow.load);
unsafeWindow.headerFilm.insertAdjacentHTML('afterend', '<div id="advLinks"><a href="javascript:rutor();">Rutor.info</a></div>');
};
document.addEventListener("DOMNodeInserted", unsafeWindow.load, false);
})()
«rutor.info/search/0/0/010/0/film ID_ФИЛЬМА_КИНОПОИСК»
Например, Богемская рапсодия:
«rutor.info/search/0/0/010/0/film 568289»
Или лучше:
«rutor.info/search/0/0/010/0/film%20568289»
Т.к. у многих фильмов на rutor в описании стоит рейтинг КиноПоиск, то вы будете искать конкретный фильм не по названию (которое может дать лишние результаты), а по ID.
// ==UserScript==
// @name Kinopoisk Adv Links
// @version 0.2
// @author FTOH
// @match https://www.kinopoisk.ru/film/*
// @grant GM_addStyle
// ==/UserScript==
(function() {
'use strict';
GM_addStyle `#headerFilm { float: left; } #advLinks { display: inline-grid; margin: 22px; margin-left: 45px; }`;
unsafeWindow.rutor = () => unsafeWindow.open('http://rutor.info/search/0/0/010/8/' + encodeURIComponent(location.pathname.replace(/\//g, ' ')), '_blank');
unsafeWindow.load = function(event) {
if(typeof unsafeWindow.headerFilm === 'undefined') return;
document.removeEventListener("DOMNodeInserted", unsafeWindow.load);
unsafeWindow.headerFilm.insertAdjacentHTML('afterend', '<div id="advLinks"><a href="javascript:rutor();">Rutor.info</a></div>');
};
document.addEventListener("DOMNodeInserted", unsafeWindow.load, false);
})()
P.S. Я еще делаю сортировку по убыванию размера. Тогда первыми в списке находятся фильмы в хорошем качестве. Очень экономит время при поиске нужного
Например, рок-опера «Иисус Христос Суперзвезда» — на рутрекере сидеров на порядок больше.
// ==UserScript==
// @name Kinopoisk Adv Links
// @version 0.3
// @author FTOH
// @match https://www.kinopoisk.ru/film/*
// @grant GM_addStyle
// ==/UserScript==
(function() {
'use strict';
GM_addStyle `#headerFilm { float: left; } #advLinks { display: block; } #advLinks>button { margin: 2px auto; width: 100px; }`;
unsafeWindow.rutor = () => unsafeWindow.open('http://rutor.info/search/0/0/010/8/' + encodeURIComponent(location.pathname.replace(/\//g, ' ')), '_blank');
unsafeWindow.rutracker = () => unsafeWindow.open('https://rutracker.org/forum/tracker.php?nm=' + encodeURIComponent(unsafeWindow.headerFilm.innerText.replace(/\n|\(сериал.*?\)/g, ' ')), '_blank');
unsafeWindow.load = function(event) {
if(typeof unsafeWindow.headerFilm === 'undefined') return;
document.removeEventListener("DOMNodeInserted", unsafeWindow.load);
unsafeWindow.headerFilm.insertAdjacentHTML('afterend', '<div id="advLinks"><button class="movie-online-button" onclick="rutor();">Rutor</button>' +
'<button class="movie-online-button" onclick="rutracker();">Rutracker</button></div>');
};
document.addEventListener("DOMNodeInserted", unsafeWindow.load, false);
})()
Случайно наткнулся на несколько расширений для Chrome. Можете их попробовать
- https://chrome.google.com/webstore/detail/%D0%BA%D0%B8%D0%BD%D0%BE%D0%BF%D0%BE%D0%B8%D1%81%D0%BA-%D1%82%D0%BE%D1%80%D1%80%D0%B5%D0%BD%D1%82%D0%B0-rutrac/idmjeohbkcljnhfpoolmfcmnecdlhelc?hl=ru
- https://chrome.google.com/webstore/detail/movie-torrent-search/haidmebdafcginpnobdbicmampbklmib?hl=ru
- https://chrome.google.com/webstore/detail/kinotracker/nekcnoeamnleegdapjhnmnlplolelnab?hl=ru
- https://chrome.google.com/webstore/detail/rutor-plus-kinopoisk-v2/apikhpgglghhbmlojodfjbedclkihffe?hl=ru
- https://chrome.google.com/webstore/detail/kinopoisk-update/nbbkidalbdibodlpphenopbmiagpdhef?hl=ru
- https://chrome.google.com/webstore/detail/%D1%81%D0%BC%D0%BE%D1%82%D1%80%D0%B8-%D0%BE%D0%BD%D0%BB%D0%B0%D0%B9%D0%BD-%D0%B2-hd-%D0%BA%D0%B0%D1%87%D0%B5%D1%81%D1%82/gkndkppgfikgdpllibmbjpbokdppjcel?hl=ru
Может быть и лучше, если потребление платного контента будет так же удобно, как и пиратского.
В настоящее время нужно иметь несколько платных подписок (каждая до тысячи в месяц), чтобы получить весь нужный контент, а также установить то же количество приложений на TV.
И работать это будет только при стабильном соединении с интернетом, разумеется.
После того как работодатели перестанут обворовывать работников, платя им гроши.
Извиняюсь перед автором, но не могу не упомянуть свое произведение :)
Я сделал похожего телеграм бота, который уведомляет о новых вышедших фильмах. Можно отслеживать фильмы как на русском, так и на английском языке. Уведомления приходят когда фильм выпущен в хорошем качестве.
Бота можно добавить через @evemovies_bot Там же внутри указана ссылка на GitHub. Ещё раз извиняюсь перед автором за рекламу потенциального конкурента… :)
Если кому-то окажется полезным (для этого и поделился), я буду только рад.
t.me/kinoreliz — канал для слежения за цифровыми релизами
ссылок на торренты нет, т.к. каждый решает для себя сам, покупать или искать на торрентах
t.me/BBFeed
Какие компоненты надо установить? Что использовать вместо cron'a?
1). Установить Python 3.
2). Загрузить программу digitalreleases.py в любое удобное место. Заменить HTML_SAVE_PATH на путь, где следует сохранять файл releases.html. Например HTML_SAVE_PATH = r«C:\Users\Yuri\releases.html».
3). Запустить её один раз с помощью Командной строки «python C:\ПУТЬ\digitalreleases.py».
3). С помощью планировщика заданий в ОС Windows (детальных статей о нём много) настроить ежедневный (в определённое время) запуск «python C:\ПУТЬ\digitalreleases.py»
4). Сделать закладку в браузере «file:///C:/ПУТЬ/releases.html». Например, «file:///C:/Users/Yuri/releases.html».
Текущая дата: 14.03.2019
Целевая дата: 13.01.2019
Количество месяцев для загрузки: 3
Загрузка релизов за 03.2019.
Traceback (most recent call last):
File "D:\Python30\digitalreleases.py", line 745, in <module>
main()
File "D:\Python30\digitalreleases.py", line 727, in main
releases = digitalReleases(DAYS)
File "D:\Python30\digitalreleases.py", line 61, in digitalReleases
requestMethod = KINOPOISK_API_RELEAESES.format(downloadDate.strftime("%m.%Y"), KINOPOISK_UUID)
ValueError: zero length field name in format
Возможно, именно в вашей ОС не работает функция os.urandom(). Но в Windows 10 должно работать без проблем. Попробуйте в main() удалить две первые строчки:
KINOPOISK_UUID = binascii.b2a_hex(os.urandom(16))
KINOPOISK_CLIENTID = binascii.b2a_hex(os.urandom(12))
Будут использоваться статические значения KINOPOISK_UUID и KINOPOISK_CLIENTID, заданные в самом начале файла.
Закомментировал эти 2 строки, результат остался прежним.
Текущая дата: 14.03.2019
Целевая дата: 13.01.2019
Количество месяцев для загрузки: 3
Загрузка релизов за 03.2019.
Загрузка релизов за 02.2019.
Загрузка релизов за 01.2019.
Загружены ID от 74 релизов.
Загрузка торрент-ссылок для filmID 1011685.
Traceback (most recent call last):
File «D:\Python30\digitalreleases.py», line 745, in main()
File «D:\Python30\digitalreleases.py», line 731, in main
torrents = rutorLinks(release[«filmID»])
File «D:\Python30\digitalreleases.py», line 311, in rutorLinks
raise IndexError(«Ошибка загрузки торрент-ссылок для filmID » + filmID + ". Не найден блок с торрентами.")
IndexError: Ошибка загрузки торрент-ссылок для filmID 1011685. Не найден блок с торрентами.
Traceback (most recent call last):
File «D:\Python30\digitalreleases.py», line 38, in import socks
ModuleNotFoundError: No module named 'socks'
pip install --upgrade pip setuptools
pip install pysocks
или
pip install --upgrade --user pip setuptools
pip install pysocks
Перед тем, как использовать SOCKS-прокси, вы должны его иметь (например, через Tor). Если у вас нет SOCKS-прокси, вам нужно найти инструкцию, как поднять Tor с SOCKS-прокси в Windows.
Так как выдает ошибку:
Python 3.7.2 (tags/v3.7.2:9a3ffc0492, Dec 23 2018, 23:09:28) [MSC v.1916 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> pip install --upgrade pip setuptools
File "<stdin>", line 1
pip install --upgrade pip setuptools
^
SyntaxError: invalid syntax
line 286
socks.set_default_proxy(socks.pip install --upgrade --user pip setuptools5, SOCKS_IP, SOCKS_PORT)
^
SyntaxError: invalid syntax
1. Можно ли сделать, чтобы кнопки на странице открывались в браузере по нажатию на колесо мыши (т.е. в фоновой вкладке)? Chrome 73.0.3683.75, 64 бит.
2. По нажатию на кнопку браузер пытается открыть локальный адрес, например «file:///D:/download/680741». Как исправить?
<button class="torrentbutton" style="" onclick="location.href='/download/680741'">BDRip-HEVC 1080p</button>
Есть файл текстовый, в котором я пишу фильмы которые хочу посмотреть. Скрипт смотрит дату релиза на кинопоиске. Если релизу уже вышел, смотрит его на популярных торрентах и найдя нужного качества добавляет в загрузку и отправляет в телеграмм уведомление о том что фильм добавлен в загрузку.
Получается что все что мне надо это просто добавить фильм в файл и ждать когда его зарелизят на торрент трекерах )
А так автор молодец )
admin@RT-N66U-AA40:/tmp/home/root# python3 /opt/etc/movies/digitalreleases.py
Текущая дата: 14.03.2019
Целевая дата: 13.01.2019
Количество месяцев для загрузки: 3
Загрузка релизов за 03.2019.
Traceback (most recent call last):
File "/opt/etc/movies/digitalreleases.py", line 745, in <module>
main()
File "/opt/etc/movies/digitalreleases.py", line 727, in main
releases = digitalReleases(DAYS)
File "/opt/etc/movies/digitalreleases.py", line 116, in digitalReleases
releaseDate = datetime.datetime.strptime(releaseDateStr, "%Y-%m-%d").date()
File "/_strptime.py", line 280, in <module>
File "/_strptime.py", line 194, in __init__
File "/_strptime.py", line 77, in __init__
File "/_strptime.py", line 129, in __calc_date_time
ValueError: character U+2aec0028 is not in range [U+0000; U+10ffff]
admin@RT-N66U-AA40:/tmp/home/root# python3 -V
Python 3.6.2
if content:
tmpDict = json.loads(content)
print(content)
print(tmpDict)
Станет понятнее, что происходит до ошибки.
admin@RT-N66U-AA40:/tmp/mnt/SDCARD/entware/etc/movies# python3 /opt/etc/movies/digitalreleases.py
Текущая дата: 14.03.2019
Целевая дата: 14.12.2018
Количество месяцев для загрузки: 4
Загрузка релизов за 03.2019.
{"success":true,"data":{"items":[{"id":1011685,"slug":"natsiya-ubiyts-2018","title":"Нация убийц","originalTitle":"Assassination Nation","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1011685.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1011685.jpg?width=360"},"genres":[{"id":3,"name":"боевик"},{"id":4,"name":"триллер"},{"id":8,"name":"драма"},{"id":6,"name":"комедия"},{"id":16,"name":"криминал"}],"countries":[{"id":1,"name":"США"}],"rating":{"value":5.521,"count":3686,"ready":true},"expectations":{"value":95.96,"count":750,"ready":true},"currentRating":"RATING","serial":false,"duration":110,"trailerId":152311,"contextData":{"isDigital":true,"releaseDate":"2019-03-01"}},{"id":1171910,"slug":"krymskiy-most-sdelano-s-lyubovyu-2018","title":"Крымский мост. Сделано с любовью!","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1171910.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1171910.jpg?width=360"},"genres":[{"id":6,"name":"комедия"},{"id":7,"name":"мелодрама"}],"countries":[{"id":2,"name":"Россия"}],"rating":{"value":2.34,"count":15359,"ready":true},"expectations":{"value":10.56,"count":4015,"ready":true},"currentRating":"RATING","serial":false,"duration":102,"trailerId":151701,"contextData":{"isDigital":true,"releaseDate":"2019-03-04"}},{"id":1065878,"slug":"kholodnaya-voyna-2018","title":"Холодная война","originalTitle":"Zimna wojna","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1065878.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1065878.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":7,"name":"мелодрама"},{"id":21,"name":"музыка"}],"countries":[{"id":32,"name":"Польша"},{"id":11,"name":"Великобритания"},{"id":8,"name":"Франция"}],"rating":{"value":7.41,"count":6144,"ready":true},"expectations":{"value":98.81,"count":562,"ready":true},"currentRating":"RATING","serial":false,"duration":89,"trailerId":153206,"contextData":{"isDigital":true,"releaseDate":"2019-03-05"}},{"id":470178,"slug":"akvamen-2018","title":"Аквамен","originalTitle":"Aquaman","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_470178.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_470178.jpg?width=360"},"genres":[{"id":2,"name":"фантастика"},{"id":5,"name":"фэнтези"},{"id":3,"name":"боевик"},{"id":10,"name":"приключения"}],"countries":[{"id":25,"name":"Австралия"},{"id":1,"name":"США"}],"rating":{"value":6.964,"count":63804,"ready":true},"expectations":{"value":88.22,"count":44419,"ready":true},"currentRating":"RATING","serial":false,"duration":143,"trailerId":151077,"contextData":{"isDigital":true,"releaseDate":"2019-03-06"}},{"id":978961,"slug":"lyubov-i-prochiy-zoopark-2017","title":"Любовь и прочий зоопарк","originalTitle":"Gaspard va au mariage","year":2017,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_978961.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_978961.jpg?width=360"},"genres":[{"id":7,"name":"мелодрама"},{"id":6,"name":"комедия"}],"countries":[{"id":8,"name":"Франция"},{"id":41,"name":"Бельгия"}],"rating":{"value":6.2,"count":343,"ready":true},"expectations":{"count":11,"ready":false},"currentRating":"RATING","serial":false,"duration":103,"trailerId":155972,"contextData":{"isDigital":true,"releaseDate":"2019-03-06"}},{"id":938644,"slug":"favoritka-2018","title":"Фаворитка","originalTitle":"Favourite, The","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_938644.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_938644.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":6,"name":"комедия"},{"id":22,"name":"биография"},{"id":23,"name":"история"}],"countries":[{"id":38,"name":"Ирландия"},{"id":11,"name":"Великобритания"},{"id":1,"name":"США"}],"rating":{"value":7.421,"count":27392,"ready":true},"expectations":{"value":94.39,"count":8168,"ready":true},"currentRating":"RATING","serial":false,"duration":119,"trailerId":152592,"contextData":{"isDigital":true,"releaseDate":"2019-03-07"}},{"id":1111720,"slug":"kak-ya-stal-russkim-2018","title":"Как я стал русским","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1111720.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1111720.jpg?width=360"},"genres":[{"id":6,"name":"комедия"}],"countries":[{"id":2,"name":"Россия"},{"id":31,"name":"Китай"}],"rating":{"value":5.781,"count":2017,"ready":true},"expectations":{"value":74.56,"count":1199,"ready":true},"currentRating":"RATING","serial":false,"duration":100,"trailerId":155904,"contextData":{"isDigital":true,"releaseDate":"2019-03-07"}},{"id":1111934,"slug":"stazhyor-2018","title":"Стажёр","originalTitle":"Il tuttofare","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1111934.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1111934.jpg?width=360"},"genres":[{"id":6,"name":"комедия"}],"countries":[{"id":14,"name":"Италия"}],"rating":{"value":5.688,"count":302,"ready":true},"expectations":{"count":3,"ready":false},"currentRating":"RATING","serial":false,"duration":96,"trailerId":156230,"contextData":{"isDigital":true,"releaseDate":"2019-03-07"}},{"id":920265,"slug":"chelovek-pauk-cherez-vselennye-2018","title":"Человек-паук: Через вселенные","originalTitle":"Spider-Man: Into the Spider-Verse","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_920265.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_920265.jpg?width=360"},"genres":[{"id":14,"name":"мультфильм"},{"id":2,"name":"фантастика"},{"id":3,"name":"боевик"},{"id":10,"name":"приключения"},{"id":11,"name":"семейный"}],"countries":[{"id":1,"name":"США"}],"rating":{"value":8.09,"count":40471,"ready":true},"expectations":{"value":96.75,"count":10006,"ready":true},"currentRating":"RATING","serial":false,"duration":117,"trailerId":153637,"contextData":{"isDigital":true,"releaseDate":"2019-03-11"}},{"id":1142555,"slug":"zvyozdy-2018","title":"Звёзды","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1142555.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1142555.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":6,"name":"комедия"}],"countries":[{"id":2,"name":"Россия"}],"rating":{"value":6.654,"count":172,"ready":true},"expectations":{"count":16,"ready":false},"currentRating":"RATING","serial":false,"duration":97,"trailerId":149659,"contextData":{"isDigital":true,"releaseDate":"2019-03-11"}},{"id":596484,"slug":"1-plus-1-gollivudskaya-istoriya-2019","title":"1+1: Голливудская история","originalTitle":"Upside, The","year":2019,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_596484.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_596484.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":6,"name":"комедия"}],"countries":[{"id":1,"name":"США"}],"rating":{"value":5.201,"count":2185,"ready":true},"expectations":{"value":72.04,"count":4490,"ready":true},"currentRating":"RATING","serial":false,"duration":126,"trailerId":154872,"contextData":{"isDigital":true,"releaseDate":"2019-03-11"}},{"id":665107,"slug":"ayka-2018","title":"Айка","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_665107.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_665107.jpg?width=360"},"genres":[{"id":8,"name":"драма"}],"countries":[{"id":2,"name":"Россия"},{"id":3,"name":"Германия"},{"id":32,"name":"Польша"},{"id":31,"name":"Китай"},{"id":122,"name":"Казахстан"}],"rating":{"value":7.235,"count":943,"ready":true},"expectations":{"value":97.82,"count":672,"ready":true},"currentRating":"RATING","serial":false,"duration":100,"trailerId":156506,"contextData":{"isDigital":true,"releaseDate":"2019-03-12"}},{"id":696247,"slug":"dve-korolevy-2018","title":"Две королевы","originalTitle":"Mary Queen of Scots","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_696247.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_696247.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":22,"name":"биография"},{"id":23,"name":"история"}],"countries":[{"id":11,"name":"Великобритания"},{"id":1,"name":"США"}],"rating":{"value":6.211,"count":5240,"ready":true},"expectations":{"value":93.1,"count":8040,"ready":true},"currentRating":"RATING","serial":false,"duration":124,"trailerId":154711,"contextData":{"isDigital":true,"releaseDate":"2019-03-14"}},{"id":974902,"slug":"tochka-vozvrata-2018","title":"Точка возврата","originalTitle":"Backtrace","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_974902.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_974902.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":16,"name":"криминал"}],"countries":[{"id":6,"name":"Канада"},{"id":1,"name":"США"}],"rating":{"value":4.164,"count":370,"ready":true},"expectations":{"value":88.01,"count":272,"ready":true},"currentRating":"RATING","serial":false,"duration":92,"trailerId":157148,"contextData":{"isDigital":true,"releaseDate":"2019-03-14"}},{"id":1162387,"slug":"madonna-rozhdenie-legendy-2018","title":"Мадонна: Рождение легенды","originalTitle":"Madonna and the Breakfast Club","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1162387.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1162387.jpg?width=360"},"genres":[{"id":12,"name":"документальный"},{"id":22,"name":"биография"}],"countries":[{"id":1,"name":"США"}],"rating":{"count":99,"ready":false},"expectations":{"value":87.57,"count":941,"ready":true},"currentRating":"RATING","serial":false,"duration":105,"trailerId":154973,"contextData":{"isDigital":true,"releaseDate":"2019-03-15"}},{"id":1064391,"slug":"angel-2018","title":"Ангел","originalTitle":"El Ángel","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1064391.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1064391.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":16,"name":"криминал"},{"id":22,"name":"биография"}],"countries":[{"id":24,"name":"Аргентина"},{"id":15,"name":"Испания"}],"rating":{"value":7.057,"count":1305,"ready":true},"expectations":{"count":65,"ready":false},"currentRating":"RATING","serial":false,"duration":118,"trailerId":156856,"contextData":{"isDigital":true,"releaseDate":"2019-03-18"}},{"id":738499,"slug":"grinch-2018","title":"Гринч","originalTitle":"Grinch, The","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_738499.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_738499.jpg?width=360"},"genres":[{"id":14,"name":"мультфильм"},{"id":5,"name":"фэнтези"},{"id":6,"name":"комедия"},{"id":11,"name":"семейный"}],"countries":[{"id":8,"name":"Франция"},{"id":31,"name":"Китай"},{"id":9,"name":"Япония"},{"id":1,"name":"США"}],"rating":{"value":6.803,"count":13162,"ready":true},"expectations":{"value":96.5,"count":5711,"ready":true},"currentRating":"RATING","serial":false,"duration":86,"trailerId":155925,"contextData":{"isDigital":true,"releaseDate":"2019-03-21"}},{"id":1115628,"slug":"devochka-2018","title":"Девочка","originalTitle":"Girl","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1115628.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1115628.jpg?width=360"},"genres":[{"id":8,"name":"драма"}],"countries":[{"id":41,"name":"Бельгия"},{"id":12,"name":"Нидерланды"}],"rating":{"value":6.668,"count":1291,"ready":true},"expectations":{"value":96.88,"count":320,"ready":true},"currentRating":"RATING","serial":false,"duration":109,"trailerId":157340,"contextData":{"isDigital":true,"releaseDate":"2019-03-21"}},{"id":1041862,"slug":"troynaya-ugroza-2019","title":"Тройная угроза","originalTitle":"Triple Threat","year":2019,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1041862.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1041862.jpg?width=360"},"genres":[{"id":3,"name":"боевик"},{"id":4,"name":"триллер"},{"id":16,"name":"криминал"}],"countries":[{"id":44,"name":"Таиланд"},{"id":31,"name":"Китай"},{"id":1,"name":"США"}],"rating":{"count":0,"ready":false},"expectations":{"value":98.88,"count":1117,"ready":true},"currentRating":"EXPECTATIONS","serial":false,"duration":96,"trailerId":157741,"contextData":{"isDigital":true,"releaseDate":"2019-03-22"}},{"id":462654,"slug":"krasivyy-malchik-2018","title":"Красивый мальчик","originalTitle":"Beautiful Boy","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_462654.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_462654.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":22,"name":"биография"}],"countries":[{"id":1,"name":"США"}],"rating":{"value":7.277,"count":4578,"ready":true},"expectations":{"value":99.44,"count":3014,"ready":true},"currentRating":"RATING","serial":false,"duration":120,"trailerId":156945,"contextData":{"isDigital":true,"releaseDate":"2019-03-25"}},{"id":1009357,"slug":"nashe-vremya-2018","title":"Наше время","originalTitle":"Nuestro tiempo","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1009357.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1009357.jpg?width=360"},"genres":[{"id":8,"name":"драма"}],"countries":[{"id":17,"name":"Мексика"},{"id":8,"name":"Франция"},{"id":3,"name":"Германия"},{"id":4,"name":"Дания"},{"id":5,"name":"Швеция"}],"rating":{"value":7.272,"count":478,"ready":true},"expectations":{"value":99.25,"count":252,"ready":true},"currentRating":"RATING","serial":false,"duration":173,"trailerId":158021,"contextData":{"isDigital":true,"releaseDate":"2019-03-28"}},{"id":1054990,"slug":"van-gog-na-poroge-vechnosti-2018","title":"Ван Гог. На пороге вечности","originalTitle":"At Eternity's Gate","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_1054990.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_1054990.jpg?width=360"},"genres":[{"id":8,"name":"драма"},{"id":22,"name":"биография"}],"countries":[{"id":21,"name":"Швейцария"},{"id":38,"name":"Ирландия"},{"id":11,"name":"Великобритания"},{"id":8,"name":"Франция"},{"id":1,"name":"США"}],"rating":{"value":7.118,"count":5682,"ready":true},"expectations":{"value":99.36,"count":1735,"ready":true},"currentRating":"RATING","serial":false,"duration":111,"trailerId":154730,"contextData":{"isDigital":true,"releaseDate":"2019-03-28"}},{"id":952241,"slug":"bamblbi-2018","title":"Бамблби","originalTitle":"Bumblebee","year":2018,"poster":{"baseUrl":"//st.kp.yandex.net/images/film_iphone/iphone360_952241.jpg","url":"//st.kp.yandex.net/images/film_iphone/iphone360_952241.jpg?width=360"},"genres":[{"id":2,"name":"фантастика"},{"id":3,"name":"боевик"},{"id":10,"name":"приключения"}],"countries":[{"id":1,"name":"США"}],"rating":{"value":6.677,"count":16809,"ready":true},"expectations":{"value":85.43,"count":13051,"ready":true},"currentRating":"RATING","serial":false,"duration":114,"trailerId":153055,"contextData":{"isDigital":true,"releaseDate":"2019-03-28"}}],"stats":{"total":23,"limit":1000,"offset":0}}}
{'success': True, 'data': {'items': [{'id': 1011685, 'slug': 'natsiya-ubiyts-2018', 'title': 'Нация убийц', 'originalTitle': 'Assassination Nation', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1011685.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1011685.jpg?width=360'}, 'genres': [{'id': 3, 'name': 'боевик'}, {'id': 4, 'name': 'триллер'}, {'id': 8, 'name': 'драма'}, {'id': 6, 'name': 'комедия'}, {'id': 16, 'name': 'криминал'}], 'countries': [{'id': 1, 'name': 'США'}], 'rating': {'value': 5.521, 'count': 3686, 'ready': True}, 'expectations': {'value': 95.959999999999988, 'count': 750, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 110, 'trailerId': 152311, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-01'}}, {'id': 1171910, 'slug': 'krymskiy-most-sdelano-s-lyubovyu-2018', 'title': 'Крымский мост. Сделано с любовью!', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1171910.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1171910.jpg?width=360'}, 'genres': [{'id': 6, 'name': 'комедия'}, {'id': 7, 'name': 'мелодрама'}], 'countries': [{'id': 2, 'name': 'Россия'}], 'rating': {'value': 2.34, 'count': 15359, 'ready': True}, 'expectations': {'value': 10.56, 'count': 4015, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 102, 'trailerId': 151701, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-04'}}, {'id': 1065878, 'slug': 'kholodnaya-voyna-2018', 'title': 'Холодная война', 'originalTitle': 'Zimna wojna', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1065878.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1065878.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 7, 'name': 'мелодрама'}, {'id': 21, 'name': 'музыка'}], 'countries': [{'id': 32, 'name': 'Польша'}, {'id': 11, 'name': 'Великобритания'}, {'id': 8, 'name': 'Франция'}], 'rating': {'value': 7.41, 'count': 6144, 'ready': True}, 'expectations': {'value': 98.81, 'count': 562, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 89, 'trailerId': 153206, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-05'}}, {'id': 470178, 'slug': 'akvamen-2018', 'title': 'Аквамен', 'originalTitle': 'Aquaman', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_470178.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_470178.jpg?width=360'}, 'genres': [{'id': 2, 'name': 'фантастика'}, {'id': 5, 'name': 'фэнтези'}, {'id': 3, 'name': 'боевик'}, {'id': 10, 'name': 'приключения'}], 'countries': [{'id': 25, 'name': 'Австралия'}, {'id': 1, 'name': 'США'}], 'rating': {'value': 6.964, 'count': 63804, 'ready': True}, 'expectations': {'value': 88.22, 'count': 44419, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 143, 'trailerId': 151077, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-06'}}, {'id': 978961, 'slug': 'lyubov-i-prochiy-zoopark-2017', 'title': 'Любовь и прочий зоопарк', 'originalTitle': 'Gaspard va au mariage', 'year': 2017, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_978961.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_978961.jpg?width=360'}, 'genres': [{'id': 7, 'name': 'мелодрама'}, {'id': 6, 'name': 'комедия'}], 'countries': [{'id': 8, 'name': 'Франция'}, {'id': 41, 'name': 'Бельгия'}], 'rating': {'value': 6.2, 'count': 343, 'ready': True}, 'expectations': {'count': 11, 'ready': False}, 'currentRating': 'RATING', 'serial': False, 'duration': 103, 'trailerId': 155972, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-06'}}, {'id': 938644, 'slug': 'favoritka-2018', 'title': 'Фаворитка', 'originalTitle': 'Favourite, The', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_938644.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_938644.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 6, 'name': 'комедия'}, {'id': 22, 'name': 'биография'}, {'id': 23, 'name': 'история'}], 'countries': [{'id': 38, 'name': 'Ирландия'}, {'id': 11, 'name': 'Великобритания'}, {'id': 1, 'name': 'США'}], 'rating': {'value': 7.421, 'count': 27392, 'ready': True}, 'expectations': {'value': 94.39, 'count': 8168, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 119, 'trailerId': 152592, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-07'}}, {'id': 1111720, 'slug': 'kak-ya-stal-russkim-2018', 'title': 'Как я стал русским', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1111720.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1111720.jpg?width=360'}, 'genres': [{'id': 6, 'name': 'комедия'}], 'countries': [{'id': 2, 'name': 'Россия'}, {'id': 31, 'name': 'Китай'}], 'rating': {'value': 5.781, 'count': 2017, 'ready': True}, 'expectations': {'value': 74.56, 'count': 1199, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 100, 'trailerId': 155904, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-07'}}, {'id': 1111934, 'slug': 'stazhyor-2018', 'title': 'Стажёр', 'originalTitle': 'Il tuttofare', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1111934.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1111934.jpg?width=360'}, 'genres': [{'id': 6, 'name': 'комедия'}], 'countries': [{'id': 14, 'name': 'Италия'}], 'rating': {'value': 5.688, 'count': 302, 'ready': True}, 'expectations': {'count': 3, 'ready': False}, 'currentRating': 'RATING', 'serial': False, 'duration': 96, 'trailerId': 156230, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-07'}}, {'id': 920265, 'slug': 'chelovek-pauk-cherez-vselennye-2018', 'title': 'Человек-паук: Через вселенные', 'originalTitle': 'Spider-Man: Into the Spider-Verse', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_920265.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_920265.jpg?width=360'}, 'genres': [{'id': 14, 'name': 'мультфильм'}, {'id': 2, 'name': 'фантастика'}, {'id': 3, 'name': 'боевик'}, {'id': 10, 'name': 'приключения'}, {'id': 11, 'name': 'семейный'}], 'countries': [{'id': 1, 'name': 'США'}], 'rating': {'value': 8.09, 'count': 40471, 'ready': True}, 'expectations': {'value': 96.75, 'count': 10006, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 117, 'trailerId': 153637, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-11'}}, {'id': 1142555, 'slug': 'zvyozdy-2018', 'title': 'Звёзды', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1142555.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1142555.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 6, 'name': 'комедия'}], 'countries': [{'id': 2, 'name': 'Россия'}], 'rating': {'value': 6.654, 'count': 172, 'ready': True}, 'expectations': {'count': 16, 'ready': False}, 'currentRating': 'RATING', 'serial': False, 'duration': 97, 'trailerId': 149659, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-11'}}, {'id': 596484, 'slug': '1-plus-1-gollivudskaya-istoriya-2019', 'title': '1+1: Голливудская история', 'originalTitle': 'Upside, The', 'year': 2019, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_596484.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_596484.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 6, 'name': 'комедия'}], 'countries': [{'id': 1, 'name': 'США'}], 'rating': {'value': 5.2010000000000006, 'count': 2185, 'ready': True}, 'expectations': {'value': 72.040000000000012, 'count': 4490, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 126, 'trailerId': 154872, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-11'}}, {'id': 665107, 'slug': 'ayka-2018', 'title': 'Айка', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_665107.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_665107.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}], 'countries': [{'id': 2, 'name': 'Россия'}, {'id': 3, 'name': 'Германия'}, {'id': 32, 'name': 'Польша'}, {'id': 31, 'name': 'Китай'}, {'id': 122, 'name': 'Казахстан'}], 'rating': {'value': 7.235, 'count': 943, 'ready': True}, 'expectations': {'value': 97.819999999999988, 'count': 672, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 100, 'trailerId': 156506, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-12'}}, {'id': 696247, 'slug': 'dve-korolevy-2018', 'title': 'Две королевы', 'originalTitle': 'Mary Queen of Scots', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_696247.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_696247.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 22, 'name': 'биография'}, {'id': 23, 'name': 'история'}], 'countries': [{'id': 11, 'name': 'Великобритания'}, {'id': 1, 'name': 'США'}], 'rating': {'value': 6.211, 'count': 5240, 'ready': True}, 'expectations': {'value': 93.1, 'count': 8040, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 124, 'trailerId': 154711, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-14'}}, {'id': 974902, 'slug': 'tochka-vozvrata-2018', 'title': 'Точка возврата', 'originalTitle': 'Backtrace', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_974902.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_974902.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 16, 'name': 'криминал'}], 'countries': [{'id': 6, 'name': 'Канада'}, {'id': 1, 'name': 'США'}], 'rating': {'value': 4.1639999999999994, 'count': 370, 'ready': True}, 'expectations': {'value': 88.01, 'count': 272, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 92, 'trailerId': 157148, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-14'}}, {'id': 1162387, 'slug': 'madonna-rozhdenie-legendy-2018', 'title': 'Мадонна: Рождение легенды', 'originalTitle': 'Madonna and the Breakfast Club', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1162387.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1162387.jpg?width=360'}, 'genres': [{'id': 12, 'name': 'документальный'}, {'id': 22, 'name': 'биография'}], 'countries': [{'id': 1, 'name': 'США'}], 'rating': {'count': 99, 'ready': False}, 'expectations': {'value': 87.569999999999988, 'count': 941, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 105, 'trailerId': 154973, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-15'}}, {'id': 1064391, 'slug': 'angel-2018', 'title': 'Ангел', 'originalTitle': 'El Ángel', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1064391.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1064391.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 16, 'name': 'криминал'}, {'id': 22, 'name': 'биография'}], 'countries': [{'id': 24, 'name': 'Аргентина'}, {'id': 15, 'name': 'Испания'}], 'rating': {'value': 7.057, 'count': 1305, 'ready': True}, 'expectations': {'count': 65, 'ready': False}, 'currentRating': 'RATING', 'serial': False, 'duration': 118, 'trailerId': 156856, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-18'}}, {'id': 738499, 'slug': 'grinch-2018', 'title': 'Гринч', 'originalTitle': 'Grinch, The', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_738499.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_738499.jpg?width=360'}, 'genres': [{'id': 14, 'name': 'мультфильм'}, {'id': 5, 'name': 'фэнтези'}, {'id': 6, 'name': 'комедия'}, {'id': 11, 'name': 'семейный'}], 'countries': [{'id': 8, 'name': 'Франция'}, {'id': 31, 'name': 'Китай'}, {'id': 9, 'name': 'Япония'}, {'id': 1, 'name': 'США'}], 'rating': {'value': 6.803, 'count': 13162, 'ready': True}, 'expectations': {'value': 96.5, 'count': 5711, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 86, 'trailerId': 155925, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-21'}}, {'id': 1115628, 'slug': 'devochka-2018', 'title': 'Девочка', 'originalTitle': 'Girl', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1115628.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1115628.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}], 'countries': [{'id': 41, 'name': 'Бельгия'}, {'id': 12, 'name': 'Нидерланды'}], 'rating': {'value': 6.6679999999999988, 'count': 1291, 'ready': True}, 'expectations': {'value': 96.88, 'count': 320, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 109, 'trailerId': 157340, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-21'}}, {'id': 1041862, 'slug': 'troynaya-ugroza-2019', 'title': 'Тройная угроза', 'originalTitle': 'Triple Threat', 'year': 2019, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1041862.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1041862.jpg?width=360'}, 'genres': [{'id': 3, 'name': 'боевик'}, {'id': 4, 'name': 'триллер'}, {'id': 16, 'name': 'криминал'}], 'countries': [{'id': 44, 'name': 'Таиланд'}, {'id': 31, 'name': 'Китай'}, {'id': 1, 'name': 'США'}], 'rating': {'count': 0, 'ready': False}, 'expectations': {'value': 98.88, 'count': 1117, 'ready': True}, 'currentRating': 'EXPECTATIONS', 'serial': False, 'duration': 96, 'trailerId': 157741, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-22'}}, {'id': 462654, 'slug': 'krasivyy-malchik-2018', 'title': 'Красивый мальчик', 'originalTitle': 'Beautiful Boy', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_462654.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_462654.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 22, 'name': 'биография'}], 'countries': [{'id': 1, 'name': 'США'}], 'rating': {'value': 7.277, 'count': 4578, 'ready': True}, 'expectations': {'value': 99.44, 'count': 3014, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 120, 'trailerId': 156945, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-25'}}, {'id': 1009357, 'slug': 'nashe-vremya-2018', 'title': 'Наше время', 'originalTitle': 'Nuestro tiempo', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1009357.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1009357.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}], 'countries': [{'id': 17, 'name': 'Мексика'}, {'id': 8, 'name': 'Франция'}, {'id': 3, 'name': 'Германия'}, {'id': 4, 'name': 'Дания'}, {'id': 5, 'name': 'Швеция'}], 'rating': {'value': 7.272, 'count': 478, 'ready': True}, 'expectations': {'value': 99.25, 'count': 252, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 173, 'trailerId': 158021, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-28'}}, {'id': 1054990, 'slug': 'van-gog-na-poroge-vechnosti-2018', 'title': 'Ван Гог. На пороге вечности', 'originalTitle': "At Eternity's Gate", 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_1054990.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_1054990.jpg?width=360'}, 'genres': [{'id': 8, 'name': 'драма'}, {'id': 22, 'name': 'биография'}], 'countries': [{'id': 21, 'name': 'Швейцария'}, {'id': 38, 'name': 'Ирландия'}, {'id': 11, 'name': 'Великобритания'}, {'id': 8, 'name': 'Франция'}, {'id': 1, 'name': 'США'}], 'rating': {'value': 7.118, 'count': 5682, 'ready': True}, 'expectations': {'value': 99.36, 'count': 1735, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 111, 'trailerId': 154730, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-28'}}, {'id': 952241, 'slug': 'bamblbi-2018', 'title': 'Бамблби', 'originalTitle': 'Bumblebee', 'year': 2018, 'poster': {'baseUrl': '//st.kp.yandex.net/images/film_iphone/iphone360_952241.jpg', 'url': '//st.kp.yandex.net/images/film_iphone/iphone360_952241.jpg?width=360'}, 'genres': [{'id': 2, 'name': 'фантастика'}, {'id': 3, 'name': 'боевик'}, {'id': 10, 'name': 'приключения'}], 'countries': [{'id': 1, 'name': 'США'}], 'rating': {'value': 6.677, 'count': 16809, 'ready': True}, 'expectations': {'value': 85.430000000000012, 'count': 13051, 'ready': True}, 'currentRating': 'RATING', 'serial': False, 'duration': 114, 'trailerId': 153055, 'contextData': {'isDigital': True, 'releaseDate': '2019-03-28'}}], 'stats': {'total': 23, 'limit': 1000, 'offset': 0}}}
Traceback (most recent call last):
File "/opt/etc/movies/digitalreleases.py", line 747, in <module>
main()
File "/opt/etc/movies/digitalreleases.py", line 729, in main
releases = digitalReleases(DAYS)
File "/opt/etc/movies/digitalreleases.py", line 118, in digitalReleases
releaseDate = datetime.datetime.strptime(releaseDateStr, "%Y-%m-%d").date()
File "/_strptime.py", line 280, in <module>
File "/_strptime.py", line 194, in __init__
File "/_strptime.py", line 77, in __init__
File "/_strptime.py", line 129, in __calc_date_time
ValueError: character U+2aec0028 is not in range [U+0000; U+10ffff]
releaseDateStr = contextData.get(«releaseDate»)
А дальше автор не провел обработку ошибок с try, except. Программа попыталась сравнить текущую дату с каким-то текстом и упала.
Или каким способом можно отобрать 10 в год? Сортировкой по рейтингу?
Для меня ниже 7,2 смотреть фильмы слишком рисково придется перебрать много говна чтобы найти тот что именно мне по вкусу подойдет, с другой стороны точно зная например что мне нравятся фильмы про петли времени и вообще путешествия во времени я посмотрел их все и мне 95% понравилось несмотря на оценки.
По поводу аннигиляции, вы уверены что фильм понравился? для меня например есть критерий ресмотрибельность, если её нет я ставлю фильму максимум 7, и фильм не считается крутым хотя и не жалею что посмотрел, скорее категория «на 1 раз можно».
Задайте себе вопрос будете ли через 5 лет его пересматривать если нет, то фильм не считается что понравился.
* Имеется ввиду 100% не экстаза, а 100% от удовольствия от самого лучшего фильма снятого на текущий момент, какой именно не называется.
Имею ввиду, рейтинги ниже 7.2 не смотрю :)
Лично у меня отбор фильмов идет таким образом:
а) Прилетает RSS в мобильник со свежим релизом и описанием фильма — заинтересовало, погуглил/почитал мнение.
б) Форум, специализированная обсуждаемая «народная» ветка по рекомендации фильмов: «Внезапно, %random_film_name% неожиданно хорош! Советую.» 80% просмотренных отличных фильмов были выдернуты именно оттуда, в другом случае я про них даже и не узнал бы.
Кинопоиск парсить по рейтингам в качестве исходника напоминает «100 книг которые обязательно надо прочитать».
P.S.
qw1
Мне, например, очень понравилась «Аннигиляция».
xPomaHx
По поводу аннигиляции, вы уверены что фильм понравился?
Вот это шикарно )))))))))))) Теперь qw1 начнет сомневаться, действительно понравился ему фильм или все же нет.
Ну у нас отличия только в том что моя выборка более репрезентативная и объективна, сколько вы так отзывов прочитаете с форума и сколько оценок на кинопоиске.
По поводу 100 книг, если взять радномного человека, и о нем вообще нечего не известно о его вкусах то лучше ему посоветовать 250 топ фильмов, шансов что там фильмы оттуда понравятся больше.
вы уверены что фильм понравился?У меня очень простой критерий: если во время просмотра в голове что-то «щелкнуло», т.е. испытаны сильные эмоции, то понравился. Будь то необычный визуал, или сюжетный твист, или какая-то мысль пришла, или просто получил удовольствие от какой-то отсылки.
7,2 это 50% что понравится, дальше до 9,2 практически линейно растет до 100% условноПо рейтингу 2018 вверх выбиваются всякие «Остров собак», «Война бесконечности», «Богемская рапсодия». Первые два смотрел — жвачка-жвачкой, всё настолько стандартно и вообще не удивило. Последнее даже смотреть не хочу — фильмы-биографии, исторические — вообще не моё.
для меня например есть критерий ресмотрибельностьУ меня мало времени смотреть, а уж пересматривать точно не буду. Лучше дать шанс новому многообещающему фильму/сериалу. Или достать из беклога какой-нибудь очередной марвел — вряд ли он мне понравится, но хотя бы буду в курсе мемов поп-культуры.
Правда, сначала пришлось немного почитать, т.к. не пользовался opkg — изучить как это включить, что такое entware, почему-то с ext4-флешки устанавливаться не хотел, зато с usb-hdd без проблем установилось, затем mc для удобства… 30 минут были потрачены не зря, благодарю.
Текущая дата: 14.03.2019
Целевая дата: 13.01.2019
Количество месяцев для загрузки: 3
Загрузка релизов за 03.2019.
Загрузка релизов за 02.2019.
Загрузка релизов за 01.2019.
Загружены ID от 74 релизов.
Загрузка торрент-ссылок для filmID 1009959.
Загрузка торрент-ссылок для filmID 197352.
Загрузка данных для filmID 197352.
Загрузка торрент-ссылок для filmID 1121640.
Загрузка данных для filmID 1121640.
Загрузка торрент-ссылок для filmID 1115501.
Загрузка торрент-ссылок для filmID 988782.
Загрузка данных для filmID 988782.
Загрузка торрент-ссылок для filmID 1111720.
Загрузка торрент-ссылок для filmID 926782.
Загрузка данных для filmID 926782.
Загрузка торрент-ссылок для filmID 955968.
Загрузка данных для filmID 955968.
Загрузка торрент-ссылок для filmID 975292.
Загрузка данных для filmID 975292.
Загрузка торрент-ссылок для filmID 1142555.
Загрузка данных для filmID 1142555.
Загрузка торрент-ссылок для filmID 1022839.
Загрузка данных для filmID 1022839.
Загрузка торрент-ссылок для filmID 1227794.
Слева писалась дата/время события, для логирования так сказать.
Пока как есть, в будущем думаю переделать, пока тока руторент через прокси сделал, кинопоиск ходит напрямую. Ну и докер-файл прилагается.
1. поставил из AppCenter Python3
2. создал
/share/<mount_point>/.qpkg/QDigitalReleases
3. залил туда digitalreleases.py
4. правим файл для свои нужды:
HTML_SAVE_PATH = "/home/httpd/transmission.html"
5. определяем где лежит исполняемый файл python3: /share/<mount_point>/.qpkg/Python3/src/bin/python3.5
6. пробуем запустить:
/share/<mount_point>/.qpkg/Python3/src/bin/python3.5 /share/<mount_point>/.qpkg/QDigitalReleases/digitalreleases.py
7. получили кучу ошибок от SSL; ругается на сертификаты; идем в гугл
8. добавление сертификатов в /etc/ssl/certs ничего не исправило; снова идем в гугл
9. нашли такое:
import ssl
ssl._create_default_https_context = ssl._create_unverified_context
10. добавляем в /share/<mount_point>/.qpkg/QDigitalReleases/digitalreleases.py и еще раз пробуем запустить — работает!!!
Итого: костыль в виде отказа от проверки валидности https не есть хорошо, но для быстрого запуска сойдет. Буду рад если кто подскажет как подружить на этой железке сертификаты и python3.
Устанавливаешь из репо Entware и возвращаешься к началу инструкции — и все по пунктам.
- Исправлен баг с неверным формирование ссылки на торрент-файл, когда rutor отдаёт относительные ссылки на торрент-файлы, а не абсолютные.
- Исправлен баг с неверным учётом сидеров, когда раздач одного типа больше двух.
- Добавлена ссылка на страницу фильма в КиноПоиск (нажмите на рейтинг КиноПоиск).
- Добавлен параметр USE_MAGNET. Использование Magnet-ссылок вместо ссылок на торрент-файлы — True, False. По умолчанию False.
- Добавлен параметр SORT_TYPE. Тип финальной сортировки. rating — сортировка по рейтингу, releaseDate — сортировка по дате цифрового релиза релиза. По умолчанию rating.
19.03.2019:
- Исправлен баг при парсинге страницы с торрентами.
- Добавлена возможность выбора сортировки по дате появления торрентов — torrentsDate.
- Добавлена загрузка цифровых релизов за дополнительные 7 дней после текущей даты, т.к. иногда цифровой релиз появляется немного раньше официальной даты.
- Исправлен учёт и отображение рейтинга, когда рейтинг КиноПоиск отсутствует.
- Добавлена возможность сортировки в браузере (с помощью JS): по рейтингу, по дате цифрового релиза, по дате торрент-релиза.
- Добавлена сортировка по комбинированной дате.
Например, сегодня 02.03.2019.
Цифровой релиз фильма состоялся 01.02.2019, а качественный торрент-релиз 01.03.2019. Если выбрана сортировка по дате цифрового релиза, то фильм окажется где-то в середине списка, хоть он в хорошем качестве появился только вчера.
Цифровой релиз фильма состоялся 01.03.2019, а качественный торрент-релиз 01.02.2019 (т.е. он каким-то образом появился существенно раньше анонсированных планов). Если выбрана сортировка по дате торрент-релиза, то фильм окажется где-то в середине списка.
Сортировка по комбинированной дате (большая дата из даты цифрового релиза и даты торрент-релиз) в начале списка отображает актуальные релизы, как по дате цифрового релиза, так и по дате торрент-релиза, т.е. новые фильмы гарантированно будут появляться в начале списка.
- Новая версия программы. Пока в виде файла с индексом «2» digitalreleases2.py. Ещё кое-что пробую, но в целом всё работает очень хорошо.
Предыдущая версия программы оказалась малопригодной для других проектов. Вся проблема в выдаче цифровых релизов от КиноПоиск. Многих новых фильмов просто нет в этом списке. Из-за этого поставленная задача не реализуется программой.
В новой версии большая часть переписана завново, лишь взяты некоторые наработки из предыдущей версии. Доработан принцип отбора качественных раздач. Исправлены ошибки (в старой версии они уже не будете исправлены). Уже сейчас результат её работы полностью соответствет поставленной задаче.
Раньше список фильмов строился по схеме: Цифровые релизы с КиноПоиск > Поиск соответствий на Rutor для каждого фильма > Формирования списка фильмов, используя данные КиноПоиск. В новой версии: Поиск предварительно подходящих релизов на Rutor и их обработка > Формирование списка фильмов и дополнительная обработка подходящих фильмов, используя данные КиноПоиск.
Новая версия работает медленнее, но результат того стоит.
Для новой версии требуется дополнительная библиотеки Beautiful Soup 4 (в остальном никаких отличий по установке и запуску):
pip3 install beautifulsoup4
Вот пример результата от 26.03.2019 (ссылки на торрент-файлы в примере искажены, чтобы ничего не нарушать).
root@BananaPI ~ # python3 /root/Scripts/digitalreleases.py
Дата и время запуска программы: 2019-03-27 15:28:35.011373.
Количество попыток при ошибках соединения: 3.
Проверка доступности rutor.info...
Сайт rutor.info доступен.
Анализ раздач...
Загрузка списка предварительно подходящих раздач...
Traceback (most recent call last):
File "/root/Scripts/digitalreleases.py", line 1202, in main()
File "/root/Scripts/digitalreleases.py", line 64, in main
results = rutorResultsForDays(LOAD_DAYS)
File "/root/Scripts/digitalreleases.py", line 97, in rutorResultsForDays
element = parseRutorElement(result)
File "/root/Scripts/digitalreleases.py", line 555, in parseRutorElement
year = match[1]
TypeError: '_sre.SRE_Match' object is not subscriptable
Requirement already satisfied: beautifulsoup4 in /usr/local/lib/python3.5/dist-packages (4.6.0)
Спасибо
- Добавлен дополнительный поиск качественных раздач на kinozal.tv.
Если в найденых элементах отсутствует BDRip 1080p (но есть BDRemux) или отсутствует BDRemux (но есть BDRip 1080p), то будет произведён дополнительный поиск нужной качественной раздачи на kinozal.tv. Поиск будет производиться только при ключе USE_MAGNET = True, т.е. результат такого поиска — magnet-ссылки. Чтобы задействовать дополнительней поиск по kinozal.tv, вам нужно указать параметры KINOZAL_USERNAME и KINOZAL_PASSWORD. Не волнуйтесь, в финальном файле будут magnet-ссылки, не связанные с вашей учётной записью. Учётная запись нужна только для того, чтобы получить доступ к magnet-ссылке на самом сайте kinozal.tv.
Например, сейчас на rutor нет BDRemux актуальных фильмов с высоким рейтингом Фаворитка, Капернаум. А для фильма Экстаз нет BDRip 1080p, но есть BDRemux. Дополнительный поиск найдёт соответствующие BDRemux и BDRip 1080p на kinozal и добавит их в список.
Вот, как обычно, пример результата от 28.03.2019 (ссылки в примере искажены, чтобы ничего не нарушать).
Но а если серьезно, второй релиз на моём сервере что-то не полетел, спотыкается о первую строчку там где beautifulsoup, у меня Ubuntu 16.10, в репозитории не нашёл пакет beautifulsoup4, нашёл только python-bs4…
sudo apt install python3-pip
pip3 install beautifulsoup4
~ # opkg update
Downloading http://bin.entware.net/mipselsf-k3.4/Packages.gz
wget: error while loading shared libraries: libc.so.0: cannot open shared object file: No such file or directory
*** Failed to download the package list from http://bin.entware.net/mipselsf-k3.4/Packages.gz
Downloading http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
wget: error while loading shared libraries: libc.so.0: cannot open shared object file: No such file or directory
*** Failed to download the package list from http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz
Collected errors:
* opkg_download: Failed to download http://bin.entware.net/mipselsf-k3.4/Packages.gz, wget returned 127.
* opkg_download: Failed to download http://bin.entware.net/mipselsf-k3.4/keenetic/Packages.gz, wget returned 127.
Теперь другая проблема (digitalreleases2.py):
~ # python3 /opt/etc/movies/digitalreleases.py
Дата и время запуска программы: 2019-03-29 04:33:52.127348.
Количество попыток при ошибках соединения: 3.
Проверка доступности rutor.info...
Сайт rutor.info недоступен, или изменился его формат данных.
Работа программы принудительно завершена.
На Компьютере rutor.info доступен:
Дата и время запуска программы: 2019-03-29 04:41:00.697179.
Количество попыток при ошибках соединения: 3.
Проверка доступности rutor.info...
Сайт rutor.info доступен.
Анализ раздач...
Загрузка списка предварительно подходящих раздач...
Обработка раздачи: Ван Гог. На пороге вечности (2018)...
Обработка раздачи: Тень (2018)...
Обработка раздачи: Бамблби (2018)...
Обработка раздачи: Патрик (2018)...
Обработка раздачи: Стэн и Олли (2018)...
Обработка раздачи: Ангел (2018)...
Обработка раздачи: Идеальная западня (2018)...
Забыл добавить в
mcedit /opt/etc/tor/torrc
SOCKSPort 127.0.0.1:9050
Установил
pip3 install --upgrade pip setuptools
pip3 install pysocks
Заменил в
digitalreleases.py
(v.2)SOCKS5_IP = ""
на
SOCKS5_IP = "127.0.0.1"
SOCKS5_PORT = 9050
Оставил без изменения.root@192.168.1.1's password:
BusyBox v1.30.1 () built-in shell (ash)
~ # python3 /opt/etc/movies/digitalreleases.py
Дата и время запуска программы: 2019-03-29 06:00:22.474790.
Количество попыток при ошибках соединения: 3.
Для rutor.info будет использоваться прокси-сервер SOCKS5: 127.0.0.1:9050.
Проверка доступности rutor.info…
Сайт rutor.info доступен.
Анализ раздач…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Ван Гог. На пороге вечности (2018)…
Обработка раздачи: Тень (2018)…
Обработка раздачи: Бамблби (2018)…
Обработка раздачи: Патрик (2018)…
Обработка раздачи: Стэн и Олли (2018)…
Обработка раздачи: Ангел (2018)…
Обработка раздачи: Идеальная западня (2018)…
Обработка раздачи: Репродукция (2018)…
Обработка раздачи: Американский палач (2019)…
Обработка раздачи: Святая Агата (2018)…
Обработка раздачи: Аквамен (2018)…
Обработка раздачи: По половому признаку (2018)…
Обработка раздачи: Капернаум (2018)…
Обработка раздачи: Капернаум (2019)…
Обработка раздачи: Дом вверх дном (2018)…
Обработка раздачи: Месть Лиззи Борден (2018)…
Обработка раздачи: Начни сначала (2018)…
Обработка раздачи: Тройная угроза (2019)…
Обработка раздачи: Грязь (2019)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Экстаз (2018)…
Обработка раздачи: Шутки в сторону 2: Миссия в Майами (2018)…
Обработка раздачи: Крид 2 (2018)…
Обработка раздачи: Две королевы (2018)…
Обработка раздачи: Реинкарнация (2018)…
Обработка раздачи: Дикая жизнь (2018)…
Обработка раздачи: Хроники хищных городов (2018)…
Обработка раздачи: Тройная граница (2019)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Лондонские поля (2018)…
Обработка раздачи: Фантастические твари: Преступления Грин-де-Вальда (2018)…
Обработка раздачи: Зелёная книга (2018)…
Обработка раздачи: 22 мили (2018)…
Обработка раздачи: Книжный клуб (2018)…
Обработка раздачи: Стажёр (2018)…
Обработка раздачи: Разлом (2018)…
Обработка раздачи: Черная полоса (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Фаворитка (2018)…
Обработка раздачи: Ремнант: Всё ещё вижу тебя (2018)…
Обработка раздачи: Сможете ли вы меня простить? (2018)…
Обработка раздачи: Холодная война (2018)…
Обработка раздачи: Дом, который построил Джек (2018)…
Обработка раздачи: Ужастики 2: Беспокойный Хэллоуин (2018)…
Обработка раздачи: Девушка, которая застряла в паутине (2018)…
Обработка раздачи: Нация убийц (2018)…
Обработка раздачи: Вернуть Бена (2018)…
Обработка раздачи: Приключения Аладдина (2018)…
Обработка раздачи: Король воров (2018)…
Обработка раздачи: Лоро (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: На границе миров (2018)…
Обработка раздачи: Робин Гуд: Начало (2018)…
Обработка раздачи: Тёмное зеркало (2018)…
Обработка раздачи: Непотопляемые (2018)…
Обработка раздачи: Паддлтон (2019)…
Обработка раздачи: Астрал: Новое измерение (2018)…
Обработка раздачи: Сама жизнь (2018)…
Обработка раздачи: Полночное солнце (2018)…
Обработка раздачи: Интервью с Богом (2018)…
Обработка раздачи: Оверлорд (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Хэллоуин (2018)…
Обработка раздачи: Операция «Шаровая молния» (2018)…
Обработка раздачи: Один король — одна Франция (2018)…
Обработка раздачи: Новый роман (2018)…
Обработка раздачи: Пирсинг (2018)…
Обработка раздачи: Последняя миссия (2018)…
Обработка раздачи: Жил-был Дэдпул (2018)…
Обработка раздачи: Как не стать президентом (2018)…
Обработка раздачи: Можно только представить (2018)…
Обработка раздачи: Магазинные воришки (2018)…
Обработка раздачи: Точка невозврата (2018)…
Обработка раздачи: Богемская рапсодия (2018)…
Обработка раздачи: Человек на Луне (2018)…
Обработка раздачи: Не волнуйся, он далеко не уйдет (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Нас не проведешь (2018)…
Обработка раздачи: Вдовы (2018)…
Обработка раздачи: Химера (2018)…
Обработка раздачи: Ничего хорошего в отеле «Эль рояль» (2018)…
Обработка раздачи: Щелкунчик и четыре королевства (2018)…
Обработка раздачи: Мир Юрского периода 2 (2018)…
Обработка раздачи: Суспирия (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Под Сильвер-Лэйк (2018)…
Обработка раздачи: Звезда родилась (2018)…
Обработка раздачи: Бархатная бензопила (2019)…
Обработка раздачи: Анон (2018)…
Обработка раздачи: Бегущий в лабиринте: Лекарство от смерти (2018)…
Обработка раздачи: Миссия невыполнима: Последствия (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Юморист (2018)…
Обработка раздачи: Цензор (2018)…
Обработка раздачи: Айка (2018)…
Обработка раздачи: Тобол (2019)…
Обработка раздачи: Гоголь. Страшная месть (2018)…
Обработка раздачи: Т-34 (2018)…
Обработка раздачи: Семь ужинов (2019)…
Обработка раздачи: Завод (2018)…
Обработка раздачи: Отрыв (2018)…
Обработка раздачи: Звёзды (2018)…
Обработка раздачи: Как я стал русским (2018)…
Обработка раздачи: Спасти Ленинград (2019)…
Обработка раздачи: Бабушка легкого поведения 2 (2019)…
Обработка раздачи: Русский Бес (2018)…
Обработка раздачи: Моя жизнь (2018)…
Обработка раздачи: Любовный треугольник (2019)…
Обработка раздачи: Черновик (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Гринч (2018)…
Обработка раздачи: Человек-паук: Через вселенные (2018)…
Обработка раздачи: Снежные гонки (2018)…
Обработка раздачи: Волки и Овцы: Ход свиньёй (2018)…
Обработка раздачи: Ральф против интернета (2018)…
Обработка раздачи: Снежная Королева: Зазеркалье (2018)…
Обработка раздачи: Три богатыря и Наследница престола (2018)…
Обработка раздачи: Эллиот (2018)…
Загрузка списка предварительно подходящих раздач…
Обработка раздачи: Укрась прощальное утро цветами обещания (2018)…
Загрузка данных для фильма с ID 1054990…
Загружены данные для фильма: Ван Гог. На пороге вечности.
Загрузка данных для фильма с ID 1045295…
Загружены данные для фильма: Тень.
Загрузка данных для фильма с ID 952241…
Загружены данные для фильма: Бамблби.
Загрузка данных для фильма с ID 1011011…
Загружены данные для фильма: Патрик.
Загрузка данных для фильма с ID 823203…
Загружены данные для фильма: Стэн и Олли.
Загрузка данных для фильма с ID 1064391…
Загружены данные для фильма: Ангел.
Загрузка данных для фильма с ID 843790…
Загружены данные для фильма: Репродукция.
Загрузка данных для фильма с ID 1191273…
Загружены данные для фильма: Американский палач.
Загрузка данных для фильма с ID 1037328…
Загружены данные для фильма: Святая Агата.
Загрузка данных для фильма с ID 470178…
Загружены данные для фильма: Аквамен.
Загрузка данных для фильма с ID 1073213…
Загружены данные для фильма: По половому признаку.
Загрузка данных для фильма с ID 1118042…
Загружены данные для фильма: Капернаум.
Загрузка данных для фильма с ID 1094950…
Загружены данные для фильма: Дом вверх дном.
Загрузка данных для фильма с ID 941900…
Загружены данные для фильма: Месть Лиззи Борден.
Загрузка данных для фильма с ID 652758…
Загружены данные для фильма: Начни сначала.
Загрузка данных для фильма с ID 1041862…
Загружены данные для фильма: Тройная угроза.
Загрузка данных для фильма с ID 262909…
Загружены данные для фильма: Грязь.
Загрузка данных для фильма с ID 1118214…
Загружены данные для фильма: Экстаз.
Загрузка данных для фильма с ID 1043955…
Загружены данные для фильма: Крид 2.
Загрузка данных для фильма с ID 696247…
Загружены данные для фильма: Две королевы.
Загрузка данных для фильма с ID 1112132…
Загружены данные для фильма: Реинкарнация.
Загрузка данных для фильма с ID 1005852…
Загружены данные для фильма: Дикая жизнь.
Загрузка данных для фильма с ID 470464…
Загружены данные для фильма: Тройная граница.
Загрузка данных для фильма с ID 463858…
Загружены данные для фильма: Лондонские поля.
Загрузка данных для фильма с ID 843479…
Загружены данные для фильма: Фантастические твари: Преступления Грин-де-Вальда.
Загрузка данных для фильма с ID 1108577…
Загружены данные для фильма: Зеленая книга.
Загрузка данных для фильма с ID 921938…
Загружены данные для фильма: 22 мили.
Загрузка данных для фильма с ID 1111934…
Загружены данные для фильма: Стажёр.
Загрузка данных для фильма с ID 999713…
Загружены данные для фильма: Черная полоса.
Загрузка данных для фильма с ID 938644…
Загружены данные для фильма: Фаворитка.
Загрузка данных для фильма с ID 660774…
Загружены данные для фильма: Ремнант: Всё ещё вижу тебя.
Загрузка данных для фильма с ID 1065878…
Загружены данные для фильма: Холодная война.
Загрузка данных для фильма с ID 942396…
Загружены данные для фильма: Дом, который построил Джек.
Загрузка данных для фильма с ID 975287…
Загружены данные для фильма: Ужастики 2: Беспокойный Хэллоуин.
Загрузка данных для фильма с ID 955968…
Загружены данные для фильма: Девушка, которая застряла в паутине.
Загрузка данных для фильма с ID 1011685…
Загружены данные для фильма: Нация убийц.
Загрузка данных для фильма с ID 1071357…
Загружены данные для фильма: Вернуть Бена.
Загрузка данных для фильма с ID 1065112…
Загружены данные для фильма: Приключения Аладдина.
Загрузка данных для фильма с ID 1121640…
Загружены данные для фильма: Король воров.
Загрузка данных для фильма с ID 1101939…
Загружены данные для фильма: На границе миров.
Загрузка данных для фильма с ID 927495…
Загружены данные для фильма: Робин Гуд: Начало.
Загрузка данных для фильма с ID 1027785…
Загружены данные для фильма: Тёмное зеркало.
Загрузка данных для фильма с ID 1114304…
Загружены данные для фильма: Паддлтон.
Загрузка данных для фильма с ID 926782…
Загружены данные для фильма: Астрал: Новое измерение.
Загрузка данных для фильма с ID 1007921…
Загружены данные для фильма: Сама жизнь.
Загрузка данных для фильма с ID 985022…
Загружены данные для фильма: Интервью с Богом.
Загрузка данных для фильма с ID 1046450…
Загружены данные для фильма: Один король — одна Франция.
Загрузка данных для фильма с ID 1065346…
Загружены данные для фильма: Новый роман.
Загрузка данных для фильма с ID 1022839…
Загружены данные для фильма: Пирсинг.
Загрузка данных для фильма с ID 991614…
Загружены данные для фильма: Износ.
Загрузка данных для фильма с ID 1209736…
Загружены данные для фильма: Жил-был Дэдпул.
Загрузка данных для фильма с ID 1046885…
Загружены данные для фильма: Как не стать президентом.
Загрузка данных для фильма с ID 1015002…
Загружены данные для фильма: Можно только представить.
Загрузка данных для фильма с ID 1114967…
Загружены данные для фильма: Магазинные воришки.
Загрузка данных для фильма с ID 568289…
Загружены данные для фильма: Богемская рапсодия.
Загрузка данных для фильма с ID 463803…
Загружены данные для фильма: Человек на Луне.
Загрузка данных для фильма с ID 965901…
Загружены данные для фильма: Вдовы.
Загрузка данных для фильма с ID 1047565…
Загружены данные для фильма: Химера.
Загрузка данных для фильма с ID 1047143…
Загружены данные для фильма: Ничего хорошего в отеле «Эль Рояль».
Загрузка данных для фильма с ID 423063…
Загружены данные для фильма: Суспирия.
Загрузка данных для фильма с ID 980327…
Загружены данные для фильма: Под Сильвер-Лэйк.
Загрузка данных для фильма с ID 1046246…
Загружены данные для фильма: Бархатная бензопила.
Загрузка данных для фильма с ID 1006742…
Загружены данные для фильма: Юморист.
Загрузка данных для фильма с ID 730390…
Загружены данные для фильма: Цензор.
Фильм «Цензор» слишком старый. Пропуск фильма.
Загрузка данных для фильма с ID 665107…
Загружены данные для фильма: Айка.
Загрузка данных для фильма с ID 1115736…
Загружены данные для фильма: Тобол.
Загрузка данных для фильма с ID 1114917…
Загружены данные для фильма: Гоголь. Страшная месть.
Загрузка данных для фильма с ID 930878…
Загружены данные для фильма: Т-34.
Загрузка данных для фильма с ID 1115552…
Загружены данные для фильма: Семь ужинов.
Загрузка данных для фильма с ID 993591…
Загружены данные для фильма: Завод.
Загрузка данных для фильма с ID 1009491…
Загружены данные для фильма: Отрыв.
Загрузка данных для фильма с ID 1142555…
Загружены данные для фильма: Звёзды.
Загрузка данных для фильма с ID 1101223…
Загружены данные для фильма: Спасти Ленинград.
Загрузка данных для фильма с ID 1162846…
Загружены данные для фильма: Бабушка легкого поведения 2.
Загрузка данных для фильма с ID 1044134…
Загружены данные для фильма: Русский Бес.
Загрузка данных для фильма с ID 1048530…
Загружены данные для фильма: Моя жизнь.
Загрузка данных для фильма с ID 1227794…
Загружены данные для фильма: Любовный треугольник.
Загрузка данных для фильма с ID 738499…
Загружены данные для фильма: Гринч.
Загрузка данных для фильма с ID 920265…
Загружены данные для фильма: Человек-паук: Через вселенные.
Загрузка данных для фильма с ID 1187922…
Загружены данные для фильма: Снежные гонки.
Загрузка данных для фильма с ID 984361…
Загружены данные для фильма: Волки и Овцы: Ход свиньёй.
Загрузка данных для фильма с ID 988782…
Загружены данные для фильма: Ральф против интернета.
Загрузка данных для фильма с ID 1115081…
Загружены данные для фильма: Снежная Королева: Зазеркалье.
Загрузка данных для фильма с ID 1113014…
Загружены данные для фильма: Три богатыря и Наследница престола.
Работа программы завершена успешно.
- Добавлен учёт рейтинга MPAA для возраста (если отсутствует ratingAgeLimits)
- Добавлен учёт АРК-ТВ Studio и Кириллица (они в фильмах очень редко, но встречаются) для релизов с Netflix
- Небольшие правки
Вот, как обычно, пример результата от 29.03.2019 (ссылки в примере искажены, чтобы ничего не нарушать).
- Множество исправлений.
Вот, как обычно, пример результата от 01.04.2019 (ссылки в примере искажены, чтобы ничего не нарушать).
Сайт rutor.info недоступен, или изменился его формат данных
с SOCKS5_IP = «192.168.1.1» (Мой IP адрес роутера 192.168.1.1)с SOCKS5_IP = «127.0.0.1» запустился
или правильнее в
mcedit /opt/etc/tor/torrc
прописать SOCKSPort 192.168.1.1:9050
?movies.sort(key = operator.itemgetter("torrentsDate"), reverse = True)
на
movies.sort(key = operator.itemgetter(SORT_TYPE), reverse = True)
В какой-то момент поменял и забыл вернуть.
rating — это средний рейтинг между КиноПоиск и IMDb. Если какого-то из рейтингов у фильма нет или мало голосов, то используется тот, который есть.
root@raspberrypi:/opt/etc/movies# python3 digitalreleases2.py
Дата и время запуска программы: 2019-04-01 17:17:44.463199.
Количество попыток при ошибках соединения: 3.
Для rutor.info и kinozal.tv будет использоваться прокси-сервер SOCKS5: 127.0.0.1:9050.
Проверка доступности rutor.info...
Сайт rutor.info доступен.
Анализ раздач...
Загрузка списка предварительно подходящих раздач... root@raspberrypi:/opt/etc/movies#
try:
exitCode = main()
except:
exitCode = 1
на
exitCode = main()
Станет понятно, где именно происходит сбой.
root@raspberrypi:/opt/etc/movies# python3 digitalreleases2.py Дата и время запуска программы: 2019-04-01 18:20:12.819725.
Количество попыток при ошибках соединения: 4.
Для rutor.info и kinozal.tv будет использоваться прокси-сервер SOCKS5: 127.0.0.1:9050.
Проверка доступности rutor.info...
Сайт rutor.info доступен.
Анализ раздач...
Загрузка списка предварительно подходящих раздач...
Traceback (most recent call last):
File "digitalreleases2.py", line 1776, in <module>
exitCode = main()
File "digitalreleases2.py", line 74, in main
results = rutorResultsForDays(LOAD_DAYS)
File "digitalreleases2.py", line 109, in rutorResultsForDays
element = parseRutorElement(result)
File "digitalreleases2.py", line 775, in parseRutorElement
year = match[1]
TypeError: '_sre.SRE_Match' object is not subscriptable
PING rutor.info (91.132.60.13) 56(84) bytes of data.
64 bytes from 91.132.60.13: icmp_seq=1 ttl=58 time=181 ms
64 bytes from 91.132.60.13: icmp_seq=2 ttl=58 time=182 ms
64 bytes from 91.132.60.13: icmp_seq=3 ttl=58 time=181 ms
64 bytes from 91.132.60.13: icmp_seq=4 ttl=58 time=183 ms
64 bytes from 91.132.60.13: icmp_seq=5 ttl=58 time=182 ms
64 bytes from 91.132.60.13: icmp_seq=6 ttl=58 time=181 ms
^C
— rutor.info ping statistics — 7 packets transmitted, 6 received, 14% packet loss, time 6126ms
rtt min/avg/max/mdev = 181.620/182.176/183.167/0.526 ms
@bot-1 ~ $ sudo /usr/bin/python3 /movies/digitalreleases.py
Дата и время запуска программы: 2019-04-02 12:01:02.668049.
Количество попыток при ошибках соединения: 3.
Проверка доступности rutor.info…
Сайт rutor.info недоступен, или изменился его формат данных.
Работа программы принудительно завершена.
Подскажите пожалуйста? На машине впн, доступ к интернету есть. В Socks ip я убрал.
/movies/digitalreleases.py
Дата и время запуска программы: 2019-04-02 15:05:43.769198.
Количество попыток при ошибках соединения: 3.
Проверка доступности rutor.info…
Сайт rutor.info доступен.
Анализ раздач…
Загрузка списка предварительно подходящих раздач…
и обратно в консоль выбрасывает
Обновил с 3.5 до 3.6 и затем пришлось еще обновить beuatifulsoap4. Теперь все хорошо.
Осталось несколько тестов и можно выкладывать.
Чтобы были варианты «Смотрел, не показывай больше» и «Не интересно, не показывай больше».
Официальная группа НЦР для Android TV в Telegram — https://t.me/ndrofficialgroup. Здесь можно задать вопрос по программе и получить ответ. И здесь же я публикую разную вторичную информацию по проекту, обсуждать пожелания и пр.
File "/etc/movies/digitalreleases.py", line 1798, in exitCode = main()
File "/etc/movies/digitalreleases.py", line 73, in main
movies = convertRutorResults(results)
File "/etc/movies/digitalreleases.py", line 283, in convertRutorResults
print("Загружены данные для фильма: " + detail["nameRU"] + ".")
UnboundLocalError: local variable 'detail' referenced before assignment
киноpoisk изменил свое апи, пока новый не расковыряют — работать не будет
Фильмы мониторит, но уже несколько раз прерывается на одном и том же фильме…
[/opt/etc/movies] # python3 digitalreleases2.py
Дата и время запуска программы: 2020-01-20 15:41:32.731149.
Количество попыток при ошибках соединения: 3.
Для rutor.info и kinozal.tv будет использоваться прокси-сервер SOCKS5: 127.0.0.1:9050.
Проверка доступности rutor.info...
Сайт rutor.info доступен.
Анализ раздач...
Загрузка списка предварительно подходящих раздач...
Обработка раздачи: Дельфин Берни 2 (2019)...
Обработка раздачи: Дело Коллини (2019)...
Обработка раздачи: Сиротский Бруклин (2019)...
Обработка раздачи: Чёрный и синий (2019)...
Обработка раздачи: Счастливого нового дня смерти (2019)...
...
Обработка раздачи: Angry Birds 2 в кино (2019)...
Загрузка списка предварительно подходящих раздач...
Обработка раздачи: Птичий дозор (2019)...
Обработка раздачи: UglyDolls. Куклы с характером (2019)...
Загрузка списка предварительно подходящих раздач...
Обработка раздачи: Этот глупый свин не понимает мечту девочки-зайки (2019)...
Обработка раздачи: Связанные миры (2019)...
Загрузка данных для фильма с ID 1202494...
Загрузка не удалась. Пропуск фильма с ID 1202494.
[/opt/etc/movies] #
Прерывается — хоть 10 дней для анализа, хоть 100.
WEB страничка не формируется.
В чем может быть проблема?
Публичная версия программы больше не поддерживается, т.е. не исправляется при изменениях в работе используемых API и форматов данных. Но сохранена на GitHub для самостоятельной доработки при необходимости.
Следим за качественными цифровыми релизами фильмов без суеты