Merge remote-tracking branch 'refs/remotes/origin/master'
This commit is contained in:
@@ -44,11 +44,25 @@ def config_item(item):
|
|||||||
tvdb.find_and_set_infoLabels(item)
|
tvdb.find_and_set_infoLabels(item)
|
||||||
data = ''
|
data = ''
|
||||||
data = add_season(data)
|
data = add_season(data)
|
||||||
if not item.infoLabels['tvdb_id']:
|
title = item.show
|
||||||
heading = 'TVDB ID'
|
count = 0
|
||||||
item.infoLabels['tvdb_id'] = platformtools.dialog_numeric(0, heading)
|
|
||||||
|
while not item.infoLabels['tvdb_id']:
|
||||||
|
try:
|
||||||
|
item.show = platformtools.dialog_input(default=item.show, heading=config.get_localized_string(30112))
|
||||||
|
tvdb.find_and_set_infoLabels(item)
|
||||||
|
count = count + 1
|
||||||
|
except:
|
||||||
|
heading = config.get_localized_string(70704)
|
||||||
|
item.infoLabels['tvdb_id'] = platformtools.dialog_numeric(0, heading)
|
||||||
data.append(item.infoLabels['tvdb_id'])
|
data.append(item.infoLabels['tvdb_id'])
|
||||||
write_data(item.from_channel, item.show, data)
|
if item.infoLabels['tvdb_id'] != 0:
|
||||||
|
write_data(item.from_channel, title, data)
|
||||||
|
else:
|
||||||
|
message = config.get_localized_string(60444)
|
||||||
|
heading = item.show.strip()
|
||||||
|
platformtools.dialog_notification(heading, message)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def add_season(data=None):
|
def add_season(data=None):
|
||||||
@@ -59,6 +73,7 @@ def add_season(data=None):
|
|||||||
if season != "":
|
if season != "":
|
||||||
heading = config.get_localized_string(70687)
|
heading = config.get_localized_string(70687)
|
||||||
episode = platformtools.dialog_numeric(0, heading)
|
episode = platformtools.dialog_numeric(0, heading)
|
||||||
|
|
||||||
if episode == "0":
|
if episode == "0":
|
||||||
heading = config.get_localized_string(70688)
|
heading = config.get_localized_string(70688)
|
||||||
special = platformtools.dialog_numeric(0, heading)
|
special = platformtools.dialog_numeric(0, heading)
|
||||||
@@ -92,6 +107,8 @@ def write_data(channel, show, data):
|
|||||||
heading = show.strip()
|
heading = show.strip()
|
||||||
platformtools.dialog_notification(heading, message)
|
platformtools.dialog_notification(heading, message)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
def renumber(itemlist, item='', typography=''):
|
def renumber(itemlist, item='', typography=''):
|
||||||
log()
|
log()
|
||||||
|
|
||||||
@@ -118,7 +135,7 @@ def renumber(itemlist, item='', typography=''):
|
|||||||
if E == 0:
|
if E == 0:
|
||||||
epList.append([0, SP])
|
epList.append([0, SP])
|
||||||
E = 1
|
E = 1
|
||||||
if episodes['airedEpisodeNumber'] >= E:
|
if episodes['airedEpisodeNumber'] >= E or episodes['airedSeason'] > S:
|
||||||
epList.append([episodes['airedSeason'], episodes['airedEpisodeNumber']])
|
epList.append([episodes['airedSeason'], episodes['airedEpisodeNumber']])
|
||||||
page = page + 1
|
page = page + 1
|
||||||
else:
|
else:
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ def episodios(item):
|
|||||||
logger.info("blocks log: %s" % ( blocks ))
|
logger.info("blocks log: %s" % ( blocks ))
|
||||||
for block in blocks:
|
for block in blocks:
|
||||||
season_n, episode_n = scrapertoolsV2.find_single_match(block, r'(\d+)(?:×|×)(\d+)')
|
season_n, episode_n = scrapertoolsV2.find_single_match(block, r'(\d+)(?:×|×)(\d+)')
|
||||||
titolo = scrapertoolsV2.find_single_match(block, r'[&#;]\d+[ ](?:([a-zA-Z0-9;&#\s]+))[ ]?(?:[^<>])')
|
titolo = scrapertoolsV2.find_single_match(block, r'[&#;]\d+[ ]([a-zA-Z0-9;&#.\s]+)[ ]?[^<>]')
|
||||||
logger.info("block log: %s" % ( block ))
|
logger.info("block log: %s" % ( block ))
|
||||||
|
|
||||||
titolo = re.sub(r'×|×', "x", titolo).replace("’","'")
|
titolo = re.sub(r'×|×', "x", titolo).replace("’","'")
|
||||||
@@ -170,32 +170,4 @@ def findvideos(item):
|
|||||||
|
|
||||||
itemlist = support.server(item, item.url)
|
itemlist = support.server(item, item.url)
|
||||||
|
|
||||||
|
|
||||||
"""
|
|
||||||
Questa parte funziona se non vanno bene le modifiche a support
|
|
||||||
"""
|
|
||||||
## support.log()
|
|
||||||
## itemlist =[]
|
|
||||||
## data= ''
|
|
||||||
## logger.info("Url item.url: [%s] " % item.url)
|
|
||||||
##
|
|
||||||
## urls = scrapertoolsV2.find_multiple_matches(item.url, r'href="([^"]+)"')
|
|
||||||
## itemlist = servertools.find_video_items(data=str(urls))
|
|
||||||
##
|
|
||||||
## for videoitem in itemlist:
|
|
||||||
## videoitem.title = item.title + ' - [COLOR limegreen][[/COLOR]'+ videoitem.title+ ' [COLOR limegreen]][/COLOR]'
|
|
||||||
## videoitem.fulltitle = item.fulltitle
|
|
||||||
## videoitem.thumbnail = item.thumbnail
|
|
||||||
## videoitem.show = item.show
|
|
||||||
## videoitem.plot = item.plot
|
|
||||||
## videoitem.channel = item.channel
|
|
||||||
## videoitem.contentType = item.contentType
|
|
||||||
##
|
|
||||||
## # Controlla se i link sono validi
|
|
||||||
## if __comprueba_enlaces__:
|
|
||||||
## itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__)
|
|
||||||
##
|
|
||||||
## # richiesto per AutoPlay
|
|
||||||
## autoplay.start(itemlist, item)
|
|
||||||
|
|
||||||
return itemlist
|
return itemlist
|
||||||
|
|||||||
+13
-17
@@ -152,7 +152,7 @@ def scrape(item, patron = '', listGroups = [], headers="", blacklist="", data=""
|
|||||||
title = scrapertoolsV2.decodeHtmlentities(scraped["title"]).strip()
|
title = scrapertoolsV2.decodeHtmlentities(scraped["title"]).strip()
|
||||||
plot = scrapertoolsV2.htmlclean(scrapertoolsV2.decodeHtmlentities(scraped["plot"]))
|
plot = scrapertoolsV2.htmlclean(scrapertoolsV2.decodeHtmlentities(scraped["plot"]))
|
||||||
|
|
||||||
if (scraped["quality"] and scraped["episode"]): # by greko aggiunto episode
|
if scraped["quality"] and scraped["episode"]: # by greko aggiunto episode
|
||||||
longtitle = '[B]' + title + '[/B] - [B]' + scraped["episode"] + '[/B][COLOR blue][' + scraped["quality"] + '][/COLOR]' # by greko aggiunto episode
|
longtitle = '[B]' + title + '[/B] - [B]' + scraped["episode"] + '[/B][COLOR blue][' + scraped["quality"] + '][/COLOR]' # by greko aggiunto episode
|
||||||
elif scraped["episode"]: # by greko aggiunto episode
|
elif scraped["episode"]: # by greko aggiunto episode
|
||||||
longtitle = '[B]' + title + '[/B] - [B]' + scraped["episode"] + '[/B]' # by greko aggiunto episode
|
longtitle = '[B]' + title + '[/B] - [B]' + scraped["episode"] + '[/B]' # by greko aggiunto episode
|
||||||
@@ -450,16 +450,17 @@ def videolibrary(itemlist, item, typography=''):
|
|||||||
contentType = 'tvshow'
|
contentType = 'tvshow'
|
||||||
|
|
||||||
title = typo(config.get_localized_string(30161) + ' ' + typography)
|
title = typo(config.get_localized_string(30161) + ' ' + typography)
|
||||||
if config.get_videolibrary_support() and len(itemlist) > 0:
|
if inspect.stack()[1][3] == 'findvideos' and contentType == 'movie' or inspect.stack()[1][3] != 'findvideos' and contentType != 'movie':
|
||||||
itemlist.append(
|
if config.get_videolibrary_support() and len(itemlist) > 0:
|
||||||
Item(channel=item.channel,
|
itemlist.append(
|
||||||
title=title,
|
Item(channel=item.channel,
|
||||||
contentType=contentType,
|
title=title,
|
||||||
contentSerieName=item.fulltitle if contentType == 'tvshow' else '',
|
contentType=contentType,
|
||||||
url=item.url,
|
contentSerieName=item.fulltitle if contentType == 'tvshow' else '',
|
||||||
action=action,
|
url=item.url,
|
||||||
extra=extra,
|
action=action,
|
||||||
contentTitle=item.fulltitle))
|
extra=extra,
|
||||||
|
contentTitle=item.fulltitle))
|
||||||
|
|
||||||
|
|
||||||
def nextPage(itemlist, item, data, patron, function_level=1):
|
def nextPage(itemlist, item, data, patron, function_level=1):
|
||||||
@@ -493,12 +494,7 @@ def server(item, data='', headers='', AutoPlay=True, CheckLinks=True):
|
|||||||
if not data:
|
if not data:
|
||||||
data = httptools.downloadpage(item.url, headers=headers).data
|
data = httptools.downloadpage(item.url, headers=headers).data
|
||||||
## fix by greko
|
## fix by greko
|
||||||
# se inviamo un blocco di url dove cercare i video
|
data = str(item.url)
|
||||||
if type(data) == list:
|
|
||||||
data = str(item.url)
|
|
||||||
else:
|
|
||||||
# se inviamo un singolo url dove cercare il video
|
|
||||||
data = item.url
|
|
||||||
## FINE fix by greko
|
## FINE fix by greko
|
||||||
|
|
||||||
itemlist = servertools.find_video_items(data=data)
|
itemlist = servertools.find_video_items(data=data)
|
||||||
|
|||||||
+151
-167
File diff suppressed because it is too large
Load Diff
+6
-6
@@ -727,13 +727,13 @@ def check_video_link(url, server, timeout=3):
|
|||||||
:return: str(2) '??':No se ha podido comprobar. 'Ok':Parece que el link funciona. 'NO':Parece que no funciona.
|
:return: str(2) '??':No se ha podido comprobar. 'Ok':Parece que el link funciona. 'NO':Parece que no funciona.
|
||||||
"""
|
"""
|
||||||
|
|
||||||
# NK = "[COLOR 0xFFF9B613][B]" + u"\u25cf" + "[/B][/COLOR]"
|
NK = "[COLOR 0xFFF9B613][B]" + u"\u25cf".encode('utf-8') + "[/B][/COLOR]"
|
||||||
# OK = "[COLOR 0xFF00C289][B]" + u"\u25cf" + "[/B][/COLOR]"
|
OK = "[COLOR 0xFF00C289][B]" + u"\u25cf".encode('utf-8') + "[/B][/COLOR]"
|
||||||
# KO = "[COLOR 0xFFC20000][B]" + u"\u25cf" + "[/B][/COLOR]"
|
KO = "[COLOR 0xFFC20000][B]" + u"\u25cf".encode('utf-8') + "[/B][/COLOR]"
|
||||||
|
|
||||||
NK = "[COLOR 0xFFF9B613][B]O[/B][/COLOR]"
|
# NK = "[COLOR 0xFFF9B613][B]O[/B][/COLOR]"
|
||||||
OK = "[COLOR 0xFF00C289][B]O[/B][/COLOR]"
|
# OK = "[COLOR 0xFF00C289][B]O[/B][/COLOR]"
|
||||||
KO = "[COLOR 0xFFC20000][B]O[/B][/COLOR]"
|
# KO = "[COLOR 0xFFC20000][B]O[/B][/COLOR]"
|
||||||
|
|
||||||
try:
|
try:
|
||||||
server_module = __import__('servers.%s' % server, None, None, ["servers.%s" % server])
|
server_module = __import__('servers.%s' % server, None, None, ["servers.%s" % server])
|
||||||
|
|||||||
@@ -2797,12 +2797,12 @@ msgctxt "#70020"
|
|||||||
msgid "[COLOR yellow]Search similar[/COLOR]"
|
msgid "[COLOR yellow]Search similar[/COLOR]"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgctxt "#70021"
|
msgctxt "#70022"
|
||||||
msgid "Search in TMDB"
|
msgid " - Movies"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgctxt "#70022"
|
msgctxt "#70023"
|
||||||
msgid " - Movies"
|
msgid " - TV Shows"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgctxt "#70023"
|
msgctxt "#70023"
|
||||||
@@ -10446,7 +10446,7 @@ msgid "Enter the number of the starting episode"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgctxt "#70688"
|
msgctxt "#70688"
|
||||||
msgid "Episode 0 is a special episode, enter the number of this episode"
|
msgid "Episode 0 is a special episode, enter the number of this episode (0 to skip it)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
msgctxt "#70689"
|
msgctxt "#70689"
|
||||||
@@ -10502,4 +10502,8 @@ msgstr ""
|
|||||||
|
|
||||||
msgctxt "#70703"
|
msgctxt "#70703"
|
||||||
msgid "Create directories with lowercase letters"
|
msgid "Create directories with lowercase letters"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
msgctxt "#70704"
|
||||||
|
msgid "TMDB ID (0 to cancel)"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@@ -2794,12 +2794,12 @@ msgid "Search in TMDB"
|
|||||||
msgstr "Cerca in TMDB"
|
msgstr "Cerca in TMDB"
|
||||||
|
|
||||||
msgctxt "#70022"
|
msgctxt "#70022"
|
||||||
msgid " - Movies"
|
msgid " - Movies"
|
||||||
msgstr " - Film"
|
msgstr " - Film"
|
||||||
|
|
||||||
msgctxt "#70023"
|
msgctxt "#70023"
|
||||||
msgid " - TV Shows"
|
msgid " - TV Shows"
|
||||||
msgstr " - Serie TV"
|
msgstr " - Serie TV"
|
||||||
|
|
||||||
msgctxt "#70024"
|
msgctxt "#70024"
|
||||||
msgid "Search in Filmaffinity"
|
msgid "Search in Filmaffinity"
|
||||||
@@ -5431,8 +5431,8 @@ msgid "Enter the number of the starting episode"
|
|||||||
msgstr "Inserisci il numero dell'episodio di partenza"
|
msgstr "Inserisci il numero dell'episodio di partenza"
|
||||||
|
|
||||||
msgctxt "#70688"
|
msgctxt "#70688"
|
||||||
msgid "Episode 0 is a special episode, enter the number of this episode"
|
msgid "Episode 0 is a special episode, enter the number of this episode (0 to skip it)"
|
||||||
msgstr "L'episodio 0 è un episodio speciale, inserisci il numero di questo episodio"
|
msgstr "L'episodio 0 è un episodio speciale, inserisci il numero di questo episodio (0 per saltare)"
|
||||||
|
|
||||||
msgctxt "#70689"
|
msgctxt "#70689"
|
||||||
msgid "Enable Download"
|
msgid "Enable Download"
|
||||||
@@ -5488,4 +5488,8 @@ msgstr "Riavvia Kodi per applicare le modifiche"
|
|||||||
|
|
||||||
msgctxt "#70703"
|
msgctxt "#70703"
|
||||||
msgid "Create directories with lowercase letters"
|
msgid "Create directories with lowercase letters"
|
||||||
msgstr "Crea cartelle con le lettere minuscole"
|
msgstr "Crea cartelle con le lettere minuscole"
|
||||||
|
|
||||||
|
msgctxt "#70704"
|
||||||
|
msgid "TMDB ID (0 to cancel)"
|
||||||
|
msgstr "TMDB ID (0 per annullare)"
|
||||||
@@ -51,10 +51,9 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
|||||||
#fix by greko inizio
|
#fix by greko inizio
|
||||||
if not data:
|
if not data:
|
||||||
data = scrapertoolsV2.find_single_match(idata, 'action="(?:[^/]+.*?/[^/]+/([a-zA-Z0-9_]+))">')
|
data = scrapertoolsV2.find_single_match(idata, 'action="(?:[^/]+.*?/[^/]+/([a-zA-Z0-9_]+))">')
|
||||||
if '/olink/' in url or '/delta/' in url or '/mango/' in url or '/now/' in url:
|
from lib import unshortenit
|
||||||
from lib import unshortenit
|
data, status = unshortenit.unshorten(url)
|
||||||
data, status = unshortenit.unshorten(url)
|
logger.info("Data - Status zcrypt linkup : [%s] [%s] " %(data, status))
|
||||||
logger.info("Data - Status zcrypt linkup : [%s] [%s] " %(data, status))
|
|
||||||
# fix by greko fine
|
# fix by greko fine
|
||||||
else:
|
else:
|
||||||
data = ""
|
data = ""
|
||||||
@@ -71,7 +70,7 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
|||||||
else:
|
else:
|
||||||
logger.info(" url duplicada=" + url)
|
logger.info(" url duplicada=" + url)
|
||||||
|
|
||||||
patron = r"""(https?://(?:www\.)?(?:threadsphere\.bid|adf\.ly|q\.gs|j\.gs|u\.bb|ay\.gy|linkbucks\.com|any\.gs|cash4links\.co|cash4files\.co|dyo\.gs|filesonthe\.net|goneviral\.com|megaline\.co|miniurls\.co|qqc\.co|seriousdeals\.net|theseblogs\.com|theseforums\.com|tinylinks\.co|tubeviral\.com|ultrafiles\.net|urlbeat\.net|whackyvidz\.com|yyv\.co|adfoc\.us|lnx\.lu|sh\.st|href\.li|anonymz\.com|shrink-service\.it|rapidcrypt\.netz|ecleneue\.com)/[^"']+)"""
|
patron = r"""(https?://(?:www\.)?(?:threadsphere\.bid|adf\.ly|q\.gs|j\.gs|u\.bb|ay\.gy|linkbucks\.com|any\.gs|cash4links\.co|cash4files\.co|dyo\.gs|filesonthe\.net|goneviral\.com|megaline\.co|miniurls\.co|qqc\.co|seriousdeals\.net|theseblogs\.com|theseforums\.com|tinylinks\.co|tubeviral\.com|ultrafiles\.net|urlbeat\.net|whackyvidz\.com|yyv\.co|adfoc\.us|lnx\.lu|sh\.st|href\.li|anonymz\.com|shrink-service\.it|rapidcrypt\.net|ecleneue\.com)/[^"']+)"""
|
||||||
|
|
||||||
logger.info(" find_videos #" + patron + "#")
|
logger.info(" find_videos #" + patron + "#")
|
||||||
matches = re.compile(patron).findall(page_url)
|
matches = re.compile(patron).findall(page_url)
|
||||||
@@ -90,5 +89,3 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
|
|||||||
ret = page_url+" "+str(devuelve) if devuelve else page_url
|
ret = page_url+" "+str(devuelve) if devuelve else page_url
|
||||||
logger.info(" RET=" + str(ret))
|
logger.info(" RET=" + str(ret))
|
||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -6,6 +6,10 @@
|
|||||||
{
|
{
|
||||||
"pattern": "vidto.me/(?:embed-|)([A-z0-9]+)",
|
"pattern": "vidto.me/(?:embed-|)([A-z0-9]+)",
|
||||||
"url": "http://vidto.me/embed-\\1.html"
|
"url": "http://vidto.me/embed-\\1.html"
|
||||||
|
},
|
||||||
|
{
|
||||||
|
"pattern": "vidtome.stream/(?:embed-|)([A-z0-9]+)",
|
||||||
|
"url": "http://vidtome.stream/\\1.html"
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user