Merge branch 'stable' of https://github.com/kodiondemand/addon into stable
This commit is contained in:
@@ -132,8 +132,10 @@ def findvideos(item):
|
|||||||
if 'sub' in lang.lower():
|
if 'sub' in lang.lower():
|
||||||
language = 'Sub-' + language
|
language = 'Sub-' + language
|
||||||
quality = url.split('/')[-1].split('?')[0]
|
quality = url.split('/')[-1].split('?')[0]
|
||||||
|
url += "|User-Agent=" + support.httptools.get_user_agent()
|
||||||
|
|
||||||
itemlist.append(item.clone(action="play", title=language, url=url, contentLanguage = language, quality = quality, order = quality.replace('p','').zfill(4), server='directo',))
|
itemlist.append(item.clone(action="play", title=language, url=url, contentLanguage = language, quality = quality, order = quality.replace('p','').zfill(4), server='directo',))
|
||||||
|
|
||||||
itemlist.sort(key=lambda x: (x.title, x.order), reverse=False)
|
itemlist.sort(key=lambda x: (x.title, x.order), reverse=False)
|
||||||
return support.server(item, itemlist=itemlist)
|
return support.server(item, itemlist=itemlist)
|
||||||
|
|
||||||
|
|||||||
+1
-1
@@ -55,6 +55,6 @@ def search(item, text):
|
|||||||
|
|
||||||
|
|
||||||
def findvideos(item):
|
def findvideos(item):
|
||||||
url = support.match(item, patron=r'<a class="bot1" href="([^"]+)"').match
|
url = support.match(item, patron=r'<a class=["]?bot1["]? href="([^"]+)"').match
|
||||||
url = support.httptools.downloadpage(url, followredirect=True).url
|
url = support.httptools.downloadpage(url, followredirect=True).url
|
||||||
return support.server(item, url)
|
return support.server(item, url)
|
||||||
|
|||||||
@@ -4,6 +4,7 @@
|
|||||||
from core import httptools
|
from core import httptools
|
||||||
from core import scrapertools
|
from core import scrapertools
|
||||||
from platformcode import logger, config
|
from platformcode import logger, config
|
||||||
|
from lib import jsunpack
|
||||||
|
|
||||||
|
|
||||||
def test_video_exists(page_url):
|
def test_video_exists(page_url):
|
||||||
@@ -21,11 +22,14 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
|||||||
video_urls = []
|
video_urls = []
|
||||||
global data
|
global data
|
||||||
# data = httptools.downloadpage(page_url).data
|
# data = httptools.downloadpage(page_url).data
|
||||||
# enc_data = scrapertools.find_single_match(data, "text/javascript">(.+?)</script>")
|
enc_data = scrapertools.find_single_match(data, r'text/javascript">(eval.+?)(?:\n|\s*</script>)')
|
||||||
# dec_data = jsunpack.unpack(enc_data)
|
if enc_data:
|
||||||
sources = scrapertools.find_single_match(data, "<source(.*?)</source")
|
dec_data = jsunpack.unpack(enc_data)
|
||||||
patron = 'src="([^"]+)'
|
matches = scrapertools.find_multiple_matches(dec_data, r'src:"([^"]+)"')
|
||||||
matches = scrapertools.find_multiple_matches(sources, patron)
|
else:
|
||||||
|
sources = scrapertools.find_single_match(data, r"<source(.*?)</source")
|
||||||
|
patron = r'src="([^"]+)'
|
||||||
|
matches = scrapertools.find_multiple_matches(sources, patron)
|
||||||
for url in matches:
|
for url in matches:
|
||||||
Type = 'm3u8'
|
Type = 'm3u8'
|
||||||
video_url = url
|
video_url = url
|
||||||
|
|||||||
+7
-25
@@ -29,27 +29,20 @@ gc.disable()
|
|||||||
info_language = ["de", "en", "es", "fr", "it", "pt"] # from videolibrary.json
|
info_language = ["de", "en", "es", "fr", "it", "pt"] # from videolibrary.json
|
||||||
def_lang = info_language[config.get_setting("info_language", "videolibrary")]
|
def_lang = info_language[config.get_setting("info_language", "videolibrary")]
|
||||||
|
|
||||||
|
|
||||||
def mainlist(item):
|
def mainlist(item):
|
||||||
logger.info()
|
logger.info()
|
||||||
|
|
||||||
itemlist = [Item(channel=item.channel, title=config.get_localized_string(70276), action='new_search', mode='all', thumbnail=get_thumb("search.png")),
|
itemlist = [Item(channel=item.channel, title=config.get_localized_string(70276), action='new_search', mode='all', thumbnail=get_thumb("search.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, title=config.get_localized_string(70741) % config.get_localized_string(30122), action='new_search', mode='movie', thumbnail=get_thumb("search_movie.png")),
|
Item(channel=item.channel, title=config.get_localized_string(70741) % config.get_localized_string(30122), action='new_search', mode='movie', thumbnail=get_thumb("search_movie.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, title=config.get_localized_string(70741) % config.get_localized_string(30123), action='new_search', mode='tvshow', thumbnail=get_thumb("search_tvshow.png")),
|
Item(channel=item.channel, title=config.get_localized_string(70741) % config.get_localized_string(30123), action='new_search', mode='tvshow', thumbnail=get_thumb("search_tvshow.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, title=config.get_localized_string(70741) % config.get_localized_string(70314), action='new_search', page=1, mode='person', thumbnail=get_thumb("search_star.png")),
|
Item(channel=item.channel, title=config.get_localized_string(70741) % config.get_localized_string(70314), action='new_search', page=1, mode='person', thumbnail=get_thumb("search_star.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, title=config.get_localized_string(59995), action='saved_search', thumbnail=get_thumb('search.png')),
|
Item(channel=item.channel, title=config.get_localized_string(59995), action='saved_search', thumbnail=get_thumb('search.png')),
|
||||||
|
|
||||||
Item(channel=item.channel, title=config.get_localized_string(60420), action='sub_menu', thumbnail=get_thumb('search.png')),
|
Item(channel=item.channel, title=config.get_localized_string(60420), action='sub_menu', thumbnail=get_thumb('search.png')),
|
||||||
|
Item(channel=item.channel, title=typo(config.get_localized_string(59994), 'color kod bold'), action='setting_channel_new', thumbnail=get_thumb('setting_0.png')),
|
||||||
Item(channel=item.channel, title=typo(config.get_localized_string(59994), 'color kod bold'), action='opciones', thumbnail=get_thumb('setting_0.png')),
|
|
||||||
|
|
||||||
Item(channel='shortcuts', title=typo(config.get_localized_string(70286), 'color kod bold'), action='SettingOnPosition', category=5, setting=1, thumbnail=get_thumb('setting_0.png'))]
|
Item(channel='shortcuts', title=typo(config.get_localized_string(70286), 'color kod bold'), action='SettingOnPosition', category=5, setting=1, thumbnail=get_thumb('setting_0.png'))]
|
||||||
|
|
||||||
itemlist = set_context(itemlist)
|
itemlist = set_context(itemlist)
|
||||||
|
|
||||||
return itemlist
|
return itemlist
|
||||||
|
|
||||||
|
|
||||||
@@ -57,31 +50,21 @@ def sub_menu(item):
|
|||||||
logger.info()
|
logger.info()
|
||||||
|
|
||||||
itemlist = [Item(channel=item.channel, action='genres_menu', title=config.get_localized_string(70306), mode='movie', thumbnail=get_thumb("movie_genre.png")),
|
itemlist = [Item(channel=item.channel, action='genres_menu', title=config.get_localized_string(70306), mode='movie', thumbnail=get_thumb("movie_genre.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='years_menu', title=config.get_localized_string(70742), mode='movie', thumbnail=get_thumb("movie_year.png")),
|
Item(channel=item.channel, action='years_menu', title=config.get_localized_string(70742), mode='movie', thumbnail=get_thumb("movie_year.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70307), search_type='list', list_type='movie/popular', mode='movie', thumbnail=get_thumb("movie_popular.png")),
|
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70307), search_type='list', list_type='movie/popular', mode='movie', thumbnail=get_thumb("movie_popular.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70308), search_type='list', list_type='movie/top_rated', mode='movie', thumbnail=get_thumb("movie_top.png")),
|
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70308), search_type='list', list_type='movie/top_rated', mode='movie', thumbnail=get_thumb("movie_top.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70309), search_type='list', list_type='movie/now_playing', mode='movie', thumbnail=get_thumb("movie_now_playing.png")),
|
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70309), search_type='list', list_type='movie/now_playing', mode='movie', thumbnail=get_thumb("movie_now_playing.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='genres_menu', title=config.get_localized_string(70310), mode='tvshow', thumbnail=get_thumb("tvshow_genre.png")),
|
Item(channel=item.channel, action='genres_menu', title=config.get_localized_string(70310), mode='tvshow', thumbnail=get_thumb("tvshow_genre.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='years_menu', title=config.get_localized_string(70743), mode='tvshow', thumbnail=get_thumb("tvshow_year.png")),
|
Item(channel=item.channel, action='years_menu', title=config.get_localized_string(70743), mode='tvshow', thumbnail=get_thumb("tvshow_year.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70311), search_type='list', list_type='tv/popular', mode='tvshow', thumbnail=get_thumb("popular.png")),
|
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70311), search_type='list', list_type='tv/popular', mode='tvshow', thumbnail=get_thumb("popular.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70312), search_type='list', list_type='tv/on_the_air', mode='tvshow', thumbnail=get_thumb("tvshow_on_the_air.png")),
|
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70312), search_type='list', list_type='tv/on_the_air', mode='tvshow', thumbnail=get_thumb("tvshow_on_the_air.png")),
|
||||||
|
|
||||||
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70313), search_type='list', list_type='tv/top_rated', mode='tvshow', thumbnail=get_thumb("tvshow_top.png")),
|
Item(channel=item.channel, action='discover_list', title=config.get_localized_string(70313), search_type='list', list_type='tv/top_rated', mode='tvshow', thumbnail=get_thumb("tvshow_top.png")),
|
||||||
|
|
||||||
Item(channel="tvmoviedb", action="mainlist", title=config.get_localized_string(70274), thumbnail=get_thumb("search.png"))]
|
Item(channel="tvmoviedb", action="mainlist", title=config.get_localized_string(70274), thumbnail=get_thumb("search.png"))]
|
||||||
|
|
||||||
itemlist = set_context(itemlist)
|
itemlist = set_context(itemlist)
|
||||||
|
|
||||||
return itemlist
|
return itemlist
|
||||||
|
|
||||||
|
|
||||||
def saved_search(item):
|
def saved_search(item):
|
||||||
logger.info()
|
logger.info()
|
||||||
|
|
||||||
@@ -416,16 +399,15 @@ def get_channels(item):
|
|||||||
return channels_list, title_list
|
return channels_list, title_list
|
||||||
|
|
||||||
|
|
||||||
def opciones(item):
|
|
||||||
return setting_channel_new(item)
|
|
||||||
|
|
||||||
def settings(item):
|
def settings(item):
|
||||||
return platformtools.show_channel_settings(caption=config.get_localized_string(59993))
|
return platformtools.show_channel_settings(caption=config.get_localized_string(59993))
|
||||||
|
|
||||||
|
|
||||||
def set_workers():
|
def set_workers():
|
||||||
workers = config.get_setting('thread_number') if config.get_setting('thread_number') > 0 else None
|
workers = config.get_setting('thread_number') if config.get_setting('thread_number') > 0 else None
|
||||||
return workers
|
return workers
|
||||||
|
|
||||||
|
|
||||||
def setting_channel_new(item):
|
def setting_channel_new(item):
|
||||||
import xbmcgui
|
import xbmcgui
|
||||||
|
|
||||||
@@ -521,8 +503,8 @@ def setting_channel_new(item):
|
|||||||
|
|
||||||
# Dialog to select
|
# Dialog to select
|
||||||
ret = platformtools.dialog_multiselect(config.get_localized_string(59994), lista, preselect=preselect, useDetails=True)
|
ret = platformtools.dialog_multiselect(config.get_localized_string(59994), lista, preselect=preselect, useDetails=True)
|
||||||
if not ret:
|
|
||||||
return False # order cancel
|
if ret == None: return False # order cancel
|
||||||
seleccionados = [ids[i] for i in ret]
|
seleccionados = [ids[i] for i in ret]
|
||||||
|
|
||||||
# Save changes to search channels
|
# Save changes to search channels
|
||||||
|
|||||||
Reference in New Issue
Block a user