Filmizip.com - Версия за принтиране +- Коди Фен Форум България (https://kodibg.org/forum) +-- Форум: Разработка (https://kodibg.org/forum/forum-7.html) +--- Форум: Програмиране (https://kodibg.org/forum/forum-8.html) +--- Тема: Filmizip.com (/thread-1730.html) |
Filmizip.com - Krumov - 22-01-2025 Възможно ли е да се създаде добавка за сайта filmizip.com? Сравнявайки го с ВсичкиФилми или ФилмиФен има доста по-богата библиотека от филми и сериали в голямата си част с високо качество на видео и звук. Мойте няколко опита завършиха само със зареждане на менюта, но без съдъражние RE: Filmizip.com - Majide - 22-01-2025 Разлистване на каталози можеш да правиш по следния начин: Код: response = requests.get("URL адрес на категорията", headers={'User-Agent': 'Mozilla...', 'Accept': 'text/html', 'Accept-Charset': 'UTF-8', 'Accept-Language': 'bg,en-US;q=0.7,en;q=0.3', 'Accept-Encoding': 'identity', 'DNT': '1', 'Alt-Used': 'съответниядомейн', 'Connection': 'keep-alive', 'Referer': 'същия URL адрес на категорията от началото или друг адрес', 'Upgrade-Insecure-Requests': '1', 'Sec-Fetch-Dest': 'document', 'Sec-Fetch-Mode': 'navigate', 'Sec-Fetch-Site': 'same-origin', 'Sec-Fetch-User': '?1'}) Разлистване на стриймовете: Всяко видео в сайта е хостнато на видеохостинг с поне още един или повече бекъп хостинга, от които да може да се гледа, ако от главния вече не става. Затова, когато генерираш списъка със заглавията (на филмите или епизодите) в дадена категория, не ги добавяй като addLink, а като addDir т.е. те не са самостоятелни елементи а на практика директории с елементи в тях. При отваряне на такава директория (на филм) през Коди, за всеки от наличните видеохостинги, можеш да визуализираш запис в интерфейса на Коди, например: Филм (2025) [VidPlay] Филм (2025) [FMoon] Филм (2025) [VidMe] Тези елементи вече, ще бъдат описани в директорията с addLink. Когато потребителя кликне върху тях, вече ще го пратиш към подпрограма за отваряне на избрания конкретен стрийм. Всеки видеохостинг функционира по различен начин и както и сам предполагаш, повечето гледат да си крият стриймовете по обясними причини. Имаш следните два варианта: - Да си направиш собствени резолф-въри за всеки от необходимите ти хостинги (може и като отделна добавка за Коди - зависимост на текущата видео добавка) и при промяна от страна на видеохостинга, да се ангажираш да ъпдейтваш и твоя код, за да продължи той да работи; - Да използваш готов резолф-вър. Има няколко възможности, от които ти препоръчвам ResolveURL. След като резолф-въра ти върне директния адрес на стрийма, заедно с необходимите хедъри в "опашката му" (https://domain:port/path/video.m3u8?token=a1b2c3d4e5f6g7h8i9|User-Agent=Ne6to&Origin=domain&Referer=domain&...), задаваш този адрес като URL на нов ListItem, който ще бъде отворен. Задаваш му заглавие, обложка, описание, дължина и т.н. и т.н. всичко, което можеш и прецениш за нужно. За да получиш тази информация я скрейпваш от сорс кода на страницата с регулярни изрази (може и на части!, не е нужно на веднъж, но прави само една заявка към страницата). Продължаваме със субтитрите. Ако те се изтеглят от сайта с филмите, трябва да добавиш необходимия код тук, преди плейването на видеото. Изтегляш субтитъра (локално) или просто ресолф-ваш директния му адрес. След това отваряш видеострийма със xbmcplugin.setResolvedUrl(int(sys.argv[1]), True, ListItem) и след като е отворено видеото, изчакваш 3-20 секунди, преди да заредиш субтитрите в стартиралия плейър, например: Код: opener = urllib.request.build_opener() Огледай как са написани други подобни добавки за видеопортали и ще добиеш представа за различните начини, но в общи линии: - правиш заявки; - четеш отговора; - там няма подредена информация (XML/JSON - налични, само ако видеопортала има API) и затова скрейпваш данните с регулярни изрази, за да извлечеш само полезното; - конструираш List елементи в интефейса на Коди - директории за навигация и видео елементи, за самите видеа. Добавяш им метаданни за визуална естетика; - ресолф-ваш стрийма за видеото и го отваряш през плейър инстанция - зареждаш външни субтитри (ако има такива) към вече отвореното видео |