Merge pull request #261 from lopezvg/master

Clones de Newpct1: Nuevo Rediseño
This commit is contained in:
Alfa
2018-05-19 11:00:31 -05:00
committed by GitHub
15 changed files with 9929 additions and 2427 deletions
+411 -16
View File
@@ -23,36 +23,431 @@
"visible": true "visible": true
}, },
{ {
"id": "include_in_newest_peliculas", "id": "clonenewpct1_ver_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Peliculas", "label": "Mostrar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_series", "id": "clonenewpct1_verificar_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Episodios de series", "label": "Verificar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_torrent", "id": "clonenewpct1_verificar_enlaces_veronline_validos",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - Torrent", "label": "¿Contar sólo enlaces 'verificados' en Ver Online?",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No') + !eq(-2,'No')"
}, },
{ {
"id": "include_in_newest_4k", "id": "clonenewpct1_excluir1_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 9,
"max_excl": 5,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 12,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 20,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_ver_enlaces_descargas",
"type": "list",
"label": "Mostrar enlaces Descargas",
"default": 0,
"enabled": true,
"visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas",
"type": "list",
"label": "Verificar enlaces Descargas",
"default": 1,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas_validos",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - 4K", "label": "¿Contar sólo enlaces 'verificados' en Descargar?",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
} }
] ]
} }
File diff suppressed because it is too large Load Diff
+4 -4
View File
@@ -3,7 +3,7 @@
"name": "Mejor Torrent", "name": "Mejor Torrent",
"active": true, "active": true,
"adult": false, "adult": false,
"language": ["cast"], "language": ["*"],
"thumbnail": "mejortorrent.png", "thumbnail": "mejortorrent.png",
"banner": "mejortorrent.png", "banner": "mejortorrent.png",
"categories": [ "categories": [
@@ -17,14 +17,14 @@
"id": "include_in_global_search", "id": "include_in_global_search",
"type": "bool", "type": "bool",
"label": "Incluir en busqueda global", "label": "Incluir en busqueda global",
"default": false, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": true
}, },
{ {
"id": "include_in_newest_torrent", "id": "include_in_newest_peliculas",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - Torrent", "label": "Incluir en Novedades - Peliculas",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": true
+206 -127
View File
@@ -105,7 +105,7 @@ def listado(item):
item.action = "findvideos" item.action = "findvideos"
item.contentType = "movie" item.contentType = "movie"
pag = False #No hay paginación pag = False #No hay paginación
elif item.extra == "peliculas" and not item.tipo: #Desde Menún principal elif item.extra == "peliculas" and not item.tipo: #Desde Menú principal
patron = '<a href="(/peli-descargar-torrent[^"]+)">?' patron = '<a href="(/peli-descargar-torrent[^"]+)">?'
patron += '<img src="([^"]+)"[^<]+</a>' patron += '<img src="([^"]+)"[^<]+</a>'
patron_enlace = "/peli-descargar-torrent-\d+-(.*?)\.html" patron_enlace = "/peli-descargar-torrent-\d+-(.*?)\.html"
@@ -278,24 +278,24 @@ def listado(item):
title = scrapedtitle title = scrapedtitle
title_subs = "" title_subs = ""
item_local.language = "" item_local.language = []
if "[subs" in title or "[Subs" in title or "[VOS" in title or "[VOSE" in title or "(V.O.S.E" in title: if "[subs" in title.lower() or "[vos" in title.lower() or "v.o.s" in title.lower():
item_local.language = "VOS" item_local.language += ["VOS"]
title = title.replace(" [Subs. integrados]", "").replace(" [subs. Integrados]", "").replace(" [VOSE", "").replace(" (V.O.S.E)", "") title = title.replace(" [Subs. integrados]", "").replace(" [subs. Integrados]", "").replace(" [VOSE", "").replace(" [VOS", "").replace(" (V.O.S.E)", "")
if "latino" in title or "Latino" in title or "rgentina" in title: if "latino" in title.lower() or "argentina" in title.lower():
item_local.language = "LAT" item_local.language += ["LAT"]
title = title.replace(" Latino", "").replace(" latino", "").replace(" Argentina", "").replace(" argentina", "") title = title.replace(" Latino", "").replace(" latino", "").replace(" Argentina", "").replace(" argentina", "")
title = title.replace("Castellano", "").replace("castellano", "").replace("inglés", "").replace("ingles", "").replace("Inglés", "").replace("Ingles", "") title = title.replace("Castellano", "").replace("castellano", "").replace("inglés", "").replace("ingles", "").replace("Inglés", "").replace("Ingles", "")
if "3d" in title or "3D" in title: #Reservamos info de subtítulos para después de TMDB if "3d" in title.lower(): #Reservamos info para después de TMDB
title_subs = "[3D]" title_subs = " 3D"
title = title.replace(" [3d]", "").replace(" 3d", "").replace(" [3D]", "").replace(" 3D", "") title = title.replace(" [3d]", "").replace(" 3d", "").replace(" [3D]", "").replace(" 3D", "")
if "Temp" in title or "temp" in title: #Reservamos info de Temporada para después de TMDB if "temp" in title.lower(): #Reservamos info de Temporada para después de TMDB
title_subs = "[Temp.]" title_subs = "[Temp.]"
if "Audio" in title or "audio" in title: #Reservamos info de subtítulos para después de TMDB if "audio" in title.lower(): #Reservamos info de audio para después de TMDB
title_subs = '[%s]' % scrapertools.find_single_match(title, r'(\[[a|A]udio.*?\])') title_subs = '[%s]' % scrapertools.find_single_match(title, r'(\[[a|A]udio.*?\])')
title = re.sub(r'\[[a|A]udio.*?\]', '', title) title = re.sub(r'\[[a|A]udio.*?\]', '', title)
if "[Dual" in title or "[dual" in title: if "[dual" in title.lower():
title_subs = "[Dual]" title_subs = "[Dual]"
title = title = re.sub(r'\[D|dual.*?\]', '', title) title = title = re.sub(r'\[D|dual.*?\]', '', title)
@@ -312,9 +312,9 @@ def listado(item):
# Ahora preparamos el título y la calidad tanto para series como para documentales y películas # Ahora preparamos el título y la calidad tanto para series como para documentales y películas
# scrapedinfo tiene la calidad, pero solo en llamadas desde peliculas sin alfabeto # scrapedinfo tiene la calidad, pero solo en llamadas desde peliculas sin alfabeto
if item_local.extra == "series" or item_local.extra == "documentales": if item_local.extra == "series" or item_local.extra == "documentales":
item_local.quality = scrapertools.find_single_match(scrapedtitle, '.*?[\[|\(](.*?\d+.*?)[\)|\]]') item_local.quality = scrapertools.find_single_match(scrapedtitle, '.*?[\[|\(](\d+.*?)[\)|\]]')
if item_local.quality: if item_local.quality:
title = re.sub(r'[\[|\(].*?\d+.*?[\)|\]]', '', title) # Quitar la calidad del título title = re.sub(r'[\[|\(]\d+.*?[\)|\]]', '', title) # Quitar la calidad del título
info = "" info = ""
item_local.contentSerieName = scrapertools.find_single_match(title, '(.*?) - \d.*?') item_local.contentSerieName = scrapertools.find_single_match(title, '(.*?) - \d.*?')
if not item_local.contentSerieName: if not item_local.contentSerieName:
@@ -325,7 +325,7 @@ def listado(item):
if info != "" and not item_local.quality: if info != "" and not item_local.quality:
item_local.quality = info item_local.quality = info
if "(HDRip" in title or "(BR" in title or "(HDRip" in title or "(VHSRip" in title or "(DVDRip" in title or "(FullB" in title or "(fullb" in title or "(Blu" in title or "(4K" in title or "(4k" in title or "(HEVC" in title or "(IMAX" in title or "Extendida" in title or "[720p]" in title or "[1080p]" in title: if "(hdrip" in title.lower() or "(br" in title.lower() or "(vhsrip" in title.lower() or "(dvdrip" in title.lower() or "(fullb" in title.lower() or "(blu" in title.lower() or "(4k" in title.lower() or "(hevc" in title.lower() or "(imax" in title.lower() or "extendida" in title.lower() or "[720p]" in title.lower() or "[1080p]" in title.lower():
if not item_local.quality: if not item_local.quality:
item_local.quality = scrapertools.find_single_match(title, r'\(.*?\)?\(.*?\)') item_local.quality = scrapertools.find_single_match(title, r'\(.*?\)?\(.*?\)')
if not item_local.quality: if not item_local.quality:
@@ -333,10 +333,10 @@ def listado(item):
title = re.sub(r'\(.*?\)?\(.*?\)', '', title) title = re.sub(r'\(.*?\)?\(.*?\)', '', title)
title = re.sub(r'[\[|\(].*?[\)|\]]', '', title) title = re.sub(r'[\[|\(].*?[\)|\]]', '', title)
if not item_local.quality: if not item_local.quality:
if "FullBluRay" in title or "fullbluray" in title: if "fullbluray" in title.lower():
item_local.quality = "FullBluRay" item_local.quality = "FullBluRay"
title = title.replace("FullBluRay", "").replace("fullbluray", "") title = title.replace("FullBluRay", "").replace("fullbluray", "")
if "4K" in title or "4k" in title or "HDR" in title or "hdr" in title: if "4k" in title.lower() or "hdr" in title.lower():
item_local.quality = "4K" item_local.quality = "4K"
title = title.replace("4k-hdr", "").replace("4K-HDR", "").replace("hdr", "").replace("HDR", "").replace("4k", "").replace("4K", "") title = title.replace("4k-hdr", "").replace("4K-HDR", "").replace("hdr", "").replace("HDR", "").replace("4k", "").replace("4K", "")
title = title.replace("(", "").replace(")", "").replace("[", "").replace("]", "") title = title.replace("(", "").replace(")", "").replace("[", "").replace("]", "")
@@ -347,15 +347,19 @@ def listado(item):
if item_local.extra == "peliculas": if item_local.extra == "peliculas":
item_local.contentTitle = title item_local.contentTitle = title
if "Saga" in item_local.contentTitle or "Saga" in item_local.contentSerieName: if "saga" in item_local.contentTitle.lower() or "saga" in item_local.contentSerieName.lower():
item_local.contentTitle = item_local.contentTitle.replace("Saga ", "").replace("Saga", "") item_local.contentTitle = item_local.contentTitle.replace("Saga ", "").replace("Saga", "")
item_local.contentSerieName = item_local.contentSerieName.replace("Saga ", "").replace("Saga", "") item_local.contentSerieName = item_local.contentSerieName.replace("Saga ", "").replace("Saga", "")
title_subs = "[Saga]" title_subs = "[Saga]"
if "Colecc" in item_local.contentTitle or "Colecc" in item_local.contentSerieName: if "colecc" in item_local.contentTitle.lower() or "colecc" in item_local.contentSerieName.lower():
item_local.contentTitle = item_local.contentTitle.replace("Coleccion ", "").replace("Coleccion", "") item_local.contentTitle = item_local.contentTitle.replace("Coleccion ", "").replace("Coleccion", "")
item_local.contentSerieName = item_local.contentSerieName.replace("Coleccion ", "").replace("Coleccion", "") item_local.contentSerieName = item_local.contentSerieName.replace("Coleccion ", "").replace("Coleccion", "")
title_subs = "[Coleccion]" title_subs = "[Coleccion]"
if "3D" in title_subs: #Si es 3D lo añadimos a calidad
item_local.quality = item_local.quality + title_subs
title_subs = ''
# Guardamos temporalmente info extra, si lo hay # Guardamos temporalmente info extra, si lo hay
item_local.extra = item_local.extra + title_subs item_local.extra = item_local.extra + title_subs
@@ -386,6 +390,15 @@ def listado(item):
if item_local.infoLabels['year'] == "-": if item_local.infoLabels['year'] == "-":
item_local.infoLabels['year'] = '' item_local.infoLabels['year'] = ''
item_local.infoLabels['aired'] = '' item_local.infoLabels['aired'] = ''
# Preparamos el título para series, con los núm. de temporadas, si las hay
if item_local.contentType == "season" or item_local.contentType == "tvshow":
item_local.contentTitle= ''
rating = ''
if item_local.infoLabels['rating'] and item_local.infoLabels['rating'] != '0.0':
rating = float(item_local.infoLabels['rating'])
rating = round(rating, 1)
#Cambiamos el título si son capítulos múltiples #Cambiamos el título si son capítulos múltiples
if scrapertools.find_single_match(item_local.url, r'\d+x\d+.*?(\w+.*?\d+x\d+)'): if scrapertools.find_single_match(item_local.url, r'\d+x\d+.*?(\w+.*?\d+x\d+)'):
@@ -395,20 +408,20 @@ def listado(item):
if not config.get_setting("unify"): #Si Titulos Inteligentes NO seleccionados: if not config.get_setting("unify"): #Si Titulos Inteligentes NO seleccionados:
if item_local.contentType == "episode": if item_local.contentType == "episode":
if item_local.infoLabels['episodio_titulo']: if item_local.infoLabels['episodio_titulo']:
title = '%sx%s %s, %s [%s][%s][%s]' % (str(item_local.contentSeason), item_local.contentEpisodeNumber, item_local.infoLabels['episodio_titulo'], item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, item_local.language) title = '%sx%s %s, %s [%s][%s][%s]' % (str(item_local.contentSeason), item_local.contentEpisodeNumber, item_local.infoLabels['episodio_titulo'], item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, str(item_local.language))
else: else:
title = '%sx%s %s [%s][%s][%s]' % (str(item_local.contentSeason), item_local.contentEpisodeNumber, item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, item_local.language) title = '%sx%s %s [%s][%s][%s]' % (str(item_local.contentSeason), item_local.contentEpisodeNumber, item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, str(item_local.language))
item_local.infoLabels['title'] = item_local.contentSerieName item_local.infoLabels['title'] = item_local.contentSerieName
elif item_local.contentType == "season" or item_local.contentType == "tvshow": elif item_local.contentType == "season" or item_local.contentType == "tvshow":
if item_local.extra == "series" or temporada == "[Temp.]": if item_local.extra == "series" or temporada == "[Temp.]":
title = '%s - Temporada %s [%s][%s][%s]' % (item_local.contentSerieName, str(item_local.contentSeason), scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, item_local.language) title = '%s - Temporada %s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR]' % (item_local.contentSerieName, str(item_local.contentSeason), scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), rating, item_local.quality, str(item_local.language))
else: else:
title = '%s [%s][%s][%s]' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, item_local.language) title = '%s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR]' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), rating, item_local.quality, str(item_local.language))
elif item_local.contentType == "movie": elif item_local.contentType == "movie":
title = '%s [%s][%s][%s]' % (title, str(item_local.infoLabels['year']), item_local.quality, item_local.language) title = '%s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR]' % (title, str(item_local.infoLabels['year']), rating, item_local.quality, str(item_local.language))
if config.get_setting("unify"): #Si Titulos Inteligentes SÍ seleccionados: if config.get_setting("unify"): #Si Titulos Inteligentes SÍ seleccionados:
if item_local.contentType == "episode": if item_local.contentType == "episode":
if item_local.infoLabels['episodio_titulo']: if item_local.infoLabels['episodio_titulo']:
@@ -424,7 +437,9 @@ def listado(item):
title = '%s -%s-' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})')) title = '%s -%s-' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'))
title_subs = title_subs.replace("[", "-").replace("]", "-") title_subs = title_subs.replace("[", "-").replace("]", "-")
title = title.replace("--", "").replace("[]", "").replace("()", "").replace("(/)", "").replace("[/]", "") title = title.replace("--", "").replace(" []", "").replace("()", "").replace("(/)", "").replace("[/]", "")
title = re.sub(r'\s\[COLOR \w+\]\[\]\[\/COLOR\]', '', title)
title = re.sub(r'\s\[COLOR \w+\]\[\/COLOR\]', '', title)
item_local.title = title + title_subs item_local.title = title + title_subs
item_local.contentTitle += title_subs #añadimos info adicional para display item_local.contentTitle += title_subs #añadimos info adicional para display
@@ -441,7 +456,7 @@ def listado(item):
itemlist.append( itemlist.append(
Item(channel=item.channel, action="listado", title="[COLOR gold][B]Pagina siguiente >>[/B][/COLOR]", url=url_next_page, next_page=next_page, cnt_pag=cnt_pag, pag=pag, modo=modo, extra=item.extra, tipo=item.tipo)) Item(channel=item.channel, action="listado", title="[COLOR gold][B]Pagina siguiente >>[/B][/COLOR]", url=url_next_page, next_page=next_page, cnt_pag=cnt_pag, pag=pag, modo=modo, extra=item.extra, tipo=item.tipo))
logger.debug(url_next_page + " / " + next_page + " / " + str(matches_cnt) + " / " + str(cnt_pag) + " / " + str(pag) + " / " + modo + " / " + item.extra + " / " + str(item.tipo)) #logger.debug(url_next_page + " / " + next_page + " / " + str(matches_cnt) + " / " + str(cnt_pag) + " / " + str(pag) + " / " + modo + " / " + item.extra + " / " + str(item.tipo))
return itemlist return itemlist
@@ -452,6 +467,7 @@ def listado_busqueda(item):
url_next_page ='' # Controlde paginación url_next_page ='' # Controlde paginación
cnt_tot = 30 # Poner el num. máximo de items por página cnt_tot = 30 # Poner el num. máximo de items por página
pag = False # No hay paginación en la web pag = False # No hay paginación en la web
category = "" # Guarda la categoria que viene desde una busqueda global
data = re.sub(r"\n|\r|\t|\s{2,}", "", httptools.downloadpage(item.url, post=item.post).data) data = re.sub(r"\n|\r|\t|\s{2,}", "", httptools.downloadpage(item.url, post=item.post).data)
#logger.debug(data) #logger.debug(data)
@@ -478,6 +494,7 @@ def listado_busqueda(item):
patron_enlace = "\/doc-descargar-torrent-\d+-\d+-(.*?)\.html" patron_enlace = "\/doc-descargar-torrent-\d+-\d+-(.*?)\.html"
matches += re.compile(patron, re.DOTALL).findall(data) matches += re.compile(patron, re.DOTALL).findall(data)
#logger.debug("MATCHES: ")
#logger.debug(matches) #logger.debug(matches)
# Preparamos la paginación. Con un número variable de links, sin límite # Preparamos la paginación. Con un número variable de links, sin límite
@@ -518,6 +535,7 @@ def listado_busqueda(item):
# Creamos "item_local" y lo limpiamos un poco de algunos restos de item # Creamos "item_local" y lo limpiamos un poco de algunos restos de item
item_local = item.clone() item_local = item.clone()
if item_local.category: if item_local.category:
category = item.category
del item_local.category del item_local.category
if item_local.tipo: if item_local.tipo:
del item_local.tipo del item_local.tipo
@@ -531,14 +549,17 @@ def listado_busqueda(item):
# Limpiamos títulos, Sacamos datos de calidad, audio y lenguaje # Limpiamos títulos, Sacamos datos de calidad, audio y lenguaje
scrapedtitle = re.sub('\r\n', '', scrapedtitle).decode('iso-8859-1').encode('utf8').strip() scrapedtitle = re.sub('\r\n', '', scrapedtitle).decode('iso-8859-1').encode('utf8').strip()
title = scrapedtitle title = scrapedtitle
title = title.replace("á", "a").replace("é", "e").replace("í", "i").replace("ó", "o").replace("ú", "u").replace("ü", "u").replace("�", "ñ").replace("ñ", "ñ")
title_subs = "" title_subs = ""
item_local.language = ""
if "[subs" in title or "[Subs" in title or "[VOS" in title or "[VOSE" in title or "(V.O.S.E" in title: #Determinamos y marcamos idiomas distintos del castellano
item_local.language = "VOS" item_local.language = []
title = title.replace(" [Subs. integrados]", "").replace(" [subs. Integrados]", "").replace(" [VOSE", "").replace(" (V.O.S.E)", "") if "[vos" in title.lower() or "v.o.s" in title.lower() or "vo" in title.lower():
if "latino" in title or "Latino" in title or "rgentina" in title: item_local.language += ["VOS"]
item_local.language = "LAT" title = title.replace(" [Subs. integrados]", "").replace(" [subs. Integrados]", "").replace(" [VOSE", "").replace(" [VOS", "").replace(" (V.O.S.E)", "").replace(" VO", "")
if "latino" in title.lower() or "argentina" in title.lower():
item_local.language += ["LAT"]
title = title.replace(" Latino", "").replace(" latino", "").replace(" Argentina", "").replace(" argentina", "") title = title.replace(" Latino", "").replace(" latino", "").replace(" Argentina", "").replace(" argentina", "")
title = title.replace("Castellano", "").replace("castellano", "").replace("inglés", "").replace("ingles", "").replace("Inglés", "").replace("Ingles", "") title = title.replace("Castellano", "").replace("castellano", "").replace("inglés", "").replace("ingles", "").replace("Inglés", "").replace("Ingles", "")
@@ -552,11 +573,11 @@ def listado_busqueda(item):
title = re.sub(r'\[[a|A]udio.*?\]', '', title) title = re.sub(r'\[[a|A]udio.*?\]', '', title)
if "[Dual" in title or "[dual" in title: if "[Dual" in title or "[dual" in title:
title_subs = "[Dual]" title_subs = "[Dual]"
title = title = re.sub(r'\[D|dual.*?\]', '', title) title = title = re.sub(r'\[[D|d]ual.*?\]', '', title)
if title.endswith('.'): if title.endswith('.'):
title = title[:-1] title = title[:-1]
title = title.replace("á", "a", 1).replace("é", "e", 1).replace("í", "i", 1).replace("ó", "o", 1).replace("ú", "u", 1).replace("ü", "u", 1)
if not title: if not title:
title = "dummy" title = "dummy"
title = scrapertools.remove_htmltags(title) title = scrapertools.remove_htmltags(title)
@@ -634,6 +655,9 @@ def listado_busqueda(item):
#logger.debug(item_local) #logger.debug(item_local)
if not category: #Si este campo no existe es que viene de la primera pasada de una búsqueda global
return itemlist #Retornamos sin pasar por la fase de maquillaje para ahorra tiempo
#Llamamos a TMDB para que complete InfoLabels desde itemlist. Mejor desde itemlist porque envía las queries en paralelo #Llamamos a TMDB para que complete InfoLabels desde itemlist. Mejor desde itemlist porque envía las queries en paralelo
tmdb.set_infoLabels(itemlist, seekTmdb = True) tmdb.set_infoLabels(itemlist, seekTmdb = True)
@@ -655,16 +679,25 @@ def listado_busqueda(item):
item_local.infoLabels['year'] = '' item_local.infoLabels['year'] = ''
item_local.infoLabels['aired'] = '' item_local.infoLabels['aired'] = ''
# Preparamos el título para series, con los núm. de temporadas, si las hay
if item_local.contentType == "season" or item_local.contentType == "tvshow":
item_local.contentTitle= ''
rating = ''
if item_local.infoLabels['rating'] and item_local.infoLabels['rating'] != '0.0':
rating = float(item_local.infoLabels['rating'])
rating = round(rating, 1)
# Ahora maquillamos un poco los titulos dependiendo de si se han seleccionado títulos inteleigentes o no # Ahora maquillamos un poco los titulos dependiendo de si se han seleccionado títulos inteleigentes o no
if not config.get_setting("unify"): #Si Titulos Inteligentes NO seleccionados: if not config.get_setting("unify"): #Si Titulos Inteligentes NO seleccionados:
if item_local.contentType == "season" or item_local.contentType == "tvshow": if item_local.contentType == "season" or item_local.contentType == "tvshow":
if item_local.extra == "series" or temporada == "[Temp.]": if item_local.extra == "series" or temporada == "[Temp.]":
title = '%s - Temporada %s [%s][%s][%s]' % (item_local.contentSerieName, str(item_local.contentSeason), scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, item_local.language) title = '%s - Temporada %s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR]' % (item_local.contentSerieName, str(item_local.contentSeason), scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), rating, item_local.quality, str(item_local.language))
else: else:
title = '%s [%s][%s][%s]' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), item_local.quality, item_local.language) title = '%s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR]' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'), rating, item_local.quality, str(item_local.language))
elif item_local.contentType == "movie": elif item_local.contentType == "movie":
title = '%s [%s][%s][%s]' % (title, str(item_local.infoLabels['year']), item_local.quality, item_local.language) title = '%s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR]' % (title, str(item_local.infoLabels['year']), rating, item_local.quality, str(item_local.language))
if config.get_setting("unify"): #Si Titulos Inteligentes SÍ seleccionados: if config.get_setting("unify"): #Si Titulos Inteligentes SÍ seleccionados:
if item_local.contentType == "season" or item_local.contentType == "tvshow": if item_local.contentType == "season" or item_local.contentType == "tvshow":
@@ -674,7 +707,9 @@ def listado_busqueda(item):
title = '%s -%s-' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})')) title = '%s -%s-' % (item_local.contentSerieName, scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})'))
title_subs = title_subs.replace("[", "-").replace("]", "-") title_subs = title_subs.replace("[", "-").replace("]", "-")
title = title.replace("--", "").replace("[]", "").replace("()", "").replace("(/)", "").replace("[/]", "") title = title.replace("--", "").replace(" []", "").replace("()", "").replace("(/)", "").replace("[/]", "")
title = re.sub(r'\s\[COLOR \w+\]\[\]\[\/COLOR\]', '', title)
title = re.sub(r'\s\[COLOR \w+\]\[\/COLOR\]', '', title)
item_local.title = title + title_subs item_local.title = title + title_subs
item_local.contentTitle += title_subs #añadimos info adicional para display item_local.contentTitle += title_subs #añadimos info adicional para display
@@ -685,25 +720,26 @@ def listado_busqueda(item):
itemlist.append( itemlist.append(
Item(channel=item.channel, action="listado_busqueda", title="[COLOR gold][B]Pagina siguiente >>[/B][/COLOR]", url=url_next_page, next_page=next_page, cnt_pag=cnt_pag, pag=pag, modo=modo, extra=item.extra, tipo=item.tipo)) Item(channel=item.channel, action="listado_busqueda", title="[COLOR gold][B]Pagina siguiente >>[/B][/COLOR]", url=url_next_page, next_page=next_page, cnt_pag=cnt_pag, pag=pag, modo=modo, extra=item.extra, tipo=item.tipo))
logger.debug(url_next_page + " / " + next_page + " / " + str(matches_cnt) + " / " + str(cnt_pag) + " / " + str(pag) + " / " + modo + " / " + item.extra + " / " + str(item.tipo)) #logger.debug(url_next_page + " / " + next_page + " / " + str(matches_cnt) + " / " + str(cnt_pag) + " / " + str(pag) + " / " + modo + " / " + item.extra + " / " + str(item.tipo))
return itemlist return itemlist
def findvideos(item): def findvideos(item):
#import xbmc import xbmc
logger.info() logger.info()
itemlist = [] itemlist = []
# Saber si estamos en una ventana emergente lanzada desde una viñeta del menú principal, # Saber si estamos en una ventana emergente lanzada desde una viñeta del menú principal,
# con la función "play_from_library" # con la función "play_from_library"
#unify_status = False unify_status = False
#if xbmc.getCondVisibility('Window.IsMedia') == 1: if xbmc.getCondVisibility('Window.IsMedia') == 1:
# unify_status = config.get_setting("unify") unify_status = config.get_setting("unify")
unify_status = config.get_setting("unify")
# Obtener la información actualizada del Episodio, si no la hay # Obtener la información actualizada del Episodio, si no la hay
if not item.infoLabels['tmdb_id']: if not item.infoLabels['tmdb_id'] or (not item.infoLabels['episodio_titulo'] and item.contentType == 'episode'):
tmdb.set_infoLabels(item, True)
elif (not item.infoLabels['tvdb_id'] and item.contentType == 'episode') or item.contentChannel == "videolibrary":
tmdb.set_infoLabels(item, True) tmdb.set_infoLabels(item, True)
if item.post: #Puede traer datos para una llamada "post". De momento usado para documentales, pero podrían ser series if item.post: #Puede traer datos para una llamada "post". De momento usado para documentales, pero podrían ser series
@@ -720,74 +756,84 @@ def findvideos(item):
#logger.debug(matches) #logger.debug(matches)
for scrapedurl in matches: for scrapedurl in matches:
#Generamos una copia de Item para trabajar sobre ella
item_local = item.clone()
url = urlparse.urljoin(item.url, scrapedurl) url = urlparse.urljoin(item.url, scrapedurl)
# Localiza el .torrent en el siguiente link # Localiza el .torrent en el siguiente link
if not item.post: # Si no es llamada con Post, hay que bajar un nivel más if not item.post: # Si no es llamada con Post, hay que bajar un nivel más
torrent_data = re.sub(r"\n|\r|\t|\s{2}|(<!--.*?-->)", "", httptools.downloadpage(url).data) torrent_data = re.sub(r"\n|\r|\t|\s{2}|(<!--.*?-->)", "", httptools.downloadpage(url).data)
#logger.debug(torrent_data) #logger.debug(torrent_data)
link = scrapertools.get_match(torrent_data, ">Pincha.*?<a href='(.*?\/uploads\/torrents\/\w+\/.*?\.torrent)'") item_local.url = scrapertools.get_match(torrent_data, ">Pincha.*?<a href='(.*?\/uploads\/torrents\/\w+\/.*?\.torrent)'")
link = urlparse.urljoin(url, link) item_local.url = urlparse.urljoin(url, item_local.url)
else: else:
link = url # Ya teníamos el link desde el primer nivel (documentales) item_local.url = url # Ya teníamos el link desde el primer nivel (documentales)
link = link.replace(" ", "%20") item_local.url = item_local.url.replace(" ", "%20")
# Añadir el año del episodio para series y pelis, si hace falta #Pintamos el pseudo-título con toda la información disponible del vídeo
year = item.infoLabels['year'] item_local.action = ""
if item.contentType == 'episode': item_local.server = "torrent"
if item.infoLabels['aired']:
year = scrapertools.find_single_match(str(item.infoLabels['aired']), r'\/(\d{4})')
if item.infoLabels['episodio_titulo']:
title_torrent = '%sx%s - %s' % (str(item.contentSeason), str(item.contentEpisodeNumber), item.infoLabels['episodio_titulo'])
else:
title_torrent = '%sx%s' % (str(item.contentSeason), str(item.contentEpisodeNumber))
if not scrapertools.find_single_match(title_torrent, r'(\d{4})'):
title = '%s [%s] %s' % (title_torrent, year, item.contentSerieName)
else:
title = '%s, %s' % (title_torrent, item.contentSerieName)
item.infoLabels['year'] = year
else: #Limpiamos de año y rating de episodios
title = item.title if item_local.infoLabels['episodio_titulo']:
title_torrent = item.contentTitle item_local.infoLabels['episodio_titulo'] = re.sub(r'\s?\[.*?\]', '', item_local.infoLabels['episodio_titulo'])
title_torrent = re.sub(r"\[\d+\]", "", title_torrent) if item_local.infoLabels['episodio_titulo'] == item_local.contentSerieName:
item_local.infoLabels['episodio_titulo'] = ''
# Pone la calidad y lenguaje si es necesario
if not item.infoLabels['quality']:
if "HDTV" in link or "720p" in link or "1080p" in link or "4K" in link:
item.infoLabels['quality'] = scrapertools.find_single_match(link, '.*?_([H|7|1|4].*?)\.torrent')
item.infoLabels['quality'] = item.infoLabels['quality'].replace("_", " ")
if item.infoLabels['quality']:
if item.infoLabels['quality'] not in title:
title = '%s [%s]' % (title, item.infoLabels['quality'])
if item.infoLabels['quality'] not in title_torrent:
if not unify_status or item.contentChannel == "videolibrary":
title_torrent = '%s [%s]' % (title_torrent, item.infoLabels['quality'])
if item.language:
title = '%s [%s]' % (title, item.language)
# Extrae la dimensión del vídeo
if scrapertools.find_single_match(link, '.*?(\d{1,3},\d{1,2}\w+)\.torrent'):
if not unify_status: #Si Titulos Inteligentes NO seleccionados:
title = '%s[%s]' % (title, scrapertools.find_single_match(link, '.*?(\d{1,3},\d{1,2}\w+)\.torrent'))
else:
title = '%s - %s' % (title, scrapertools.find_single_match(link, '.*?(\d{1,3},\d{1,2}\w+)\.torrent'))
# Maquilla la seudo-etiqueta de Enlances Ver, incluyendo el Servidor cuando es llamado desde Videoteca
if not unify_status: #Si Titulos Inteligentes NO seleccionados:
title = '[COLOR gold]**- Enlaces Ver: [/COLOR]%s -**' % (title)
title_torrent = '[COLOR yellow][Torrent]:[/COLOR] %s' % (title_torrent)
else:
title = '[COLOR gold]Enlaces Ver: [/COLOR]%s' % (title)
if config.get_setting("quit_channel_name", "videolibrary") == 1 and item.contentChannel == "videolibrary": rating = '' #Ponemos el rating
title = '%s: %s' % (item.channel.capitalize(), title) if item_local.infoLabels['rating'] and item_local.infoLabels['rating'] != '0.0':
rating = float(item_local.infoLabels['rating'])
rating = round(rating, 1)
# Extrae la dimensión del vídeo
size = scrapertools.find_single_match(item_local.url, '(\d{1,3},\d{1,2}?\w+)\.torrent')
size = size.upper().replace(".", ",").replace("G", " G").replace("M", " M") #sustituimos . por , porque Unify lo borra
item_local.quality = re.sub('\s\[\d+,?\d*?\s\w[b|B]\]', '', item_local.quality) #Quitamos size de calidad, si lo traía
if size:
item_local.title = re.sub('\s\[\d+,?\d*?\s\w[b|B]\]', '', item_local.title) #Quitamos size de título, si lo traía
item_local.title = '%s [%s]' % (item_local.title, size) #Agregamos size al final del título
# Poner la calidad, si es necesario
if not item_local.quality:
if "HDTV" in item_local.url or "720p" in item_local.url or "1080p" in item_local.url or "4K" in item_local.url:
item_local.quality = scrapertools.find_single_match(item_local.url, '.*?_([H|7|1|4].*?)\.torrent')
item_local.quality = item_local.quality.replace("_", " ")
if item_local.contentType == "episode":
title = '%sx%s' % (str(item_local.contentSeason), str(item_local.contentEpisodeNumber).zfill(2))
if item_local.infoLabels['temporada_num_episodios']:
title = '%s (de %s)' % (title, str(item_local.infoLabels['temporada_num_episodios']))
title = '%s %s' % (title, item_local.infoLabels['episodio_titulo'])
title_gen = '%s, %s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR] [%s]' % (title, item_local.contentSerieName, item_local.infoLabels['year'], rating, item_local.quality, str(item_local.language), size)
else:
title = item_local.title
title_gen = title
itemlist.append(item.clone(title=title, action="")) #Título con todos los datos del vídeo title_gen = re.sub(r'\s\[COLOR \w+\]\[\]\[\/COLOR\]', '', title_gen) #Quitamos etiquetas vacías
title_gen = re.sub(r'\s\[COLOR \w+\]\[\/COLOR\]', '', title_gen) #Quitamos colores vacíos
title_gen = title_gen.replace(" []", "") #Quitamos etiquetas vacías
if not unify_status: #Si Titulos Inteligentes NO seleccionados:
title_gen = '**- [COLOR gold]Enlaces Ver: [/COLOR]%s[COLOR gold] -**[/COLOR]' % (title_gen)
else:
title_gen = '[COLOR gold]Enlaces Ver: [/COLOR]%s' % (title_gen)
itemlist.append(item.clone(action="play", server="torrent", title=title_torrent, url=link)) if config.get_setting("quit_channel_name", "videolibrary") == 1 and item_local.contentChannel == "videolibrary":
title_gen = '%s: %s' % (item_local.channel.capitalize(), title_gen)
logger.debug("title=[" + title + "], torrent=[ " + link + " ], url=[ " + url + " ], post=[" + item.post + "], thumbnail=[ " + item.thumbnail + " ]") itemlist.append(item_local.clone(title=title_gen)) #Título con todos los datos del vídeo
#Ahora pintamos el link del Torrent, si lo hay
if item_local.url: # Hay Torrent ?
item_local.title = '[COLOR yellow][?][/COLOR] [COLOR yellow][Torrent][/COLOR] [COLOR limegreen][%s][/COLOR] [COLOR red]%s[/COLOR]' % (item_local.quality, str(item_local.language)) #Preparamos título de Torrent
item_local.title = re.sub(r'\s\[COLOR \w+\]\[\]\[\/COLOR\]', '', item_local.title) #Quitamos etiquetas vacías
item_local.title = re.sub(r'\s\[COLOR \w+\]\[\/COLOR\]', '', item_local.title) #Quitamos colores vacíos
item_local.alive = "??" #Calidad del link sin verificar
item_local.action = "play" #Visualizar vídeo
itemlist.append(item_local.clone()) #Pintar pantalla
#logger.debug("title=[" + title + "], torrent=[ " + item_local.url + " ], url=[ " + url + " ], post=[" + item.post + "], thumbnail=[ " + item.thumbnail + " ]")
return itemlist return itemlist
@@ -809,7 +855,7 @@ def episodios(item):
"(<form name='episodios' action='secciones.php\?sec=descargas\&ap=contar_varios' method='post'>.*?)</form>") "(<form name='episodios' action='secciones.php\?sec=descargas\&ap=contar_varios' method='post'>.*?)</form>")
# Prepara el patrón de búsqueda de: URL, título, fechas y dos valores mas sin uso # Prepara el patrón de búsqueda de: URL, título, fechas y dos valores mas sin uso
if item.extra == 'series': if '/serie' in item.url:
patron = ".*?<td bgcolor[^>]+><a href='(.*?)'>?([^>]+)<\/a><\/td>.*?" patron = ".*?<td bgcolor[^>]+><a href='(.*?)'>?([^>]+)<\/a><\/td>.*?"
else: else:
patron = "<form name='episodios' action='(.*?)' method='post'>.*?<td bgcolor[^>]+>(.*?)<\/td>.*?" patron = "<form name='episodios' action='(.*?)' method='post'>.*?<td bgcolor[^>]+>(.*?)<\/td>.*?"
@@ -824,7 +870,7 @@ def episodios(item):
#logger.debug(data) #logger.debug(data)
# Recorremos todos los episodios generando un Item local por cada uno en Itemlist # Recorremos todos los episodios generando un Item local por cada uno en Itemlist
for scrapedurl, scrapedtitle, fecha, name, value in matches: for scrapedurl, scrapedtitle, year, name, value in matches:
item_local = item.clone() item_local = item.clone()
item_local.action = "findvideos" item_local.action = "findvideos"
item_local.contentType = "episode" item_local.contentType = "episode"
@@ -837,9 +883,9 @@ def episodios(item):
if scrapedtitle.endswith('.'): if scrapedtitle.endswith('.'):
scrapedtitle = scrapedtitle[:-1] scrapedtitle = scrapedtitle[:-1]
if not scrapedtitle: if not scrapedtitle:
scrapedtitle = "dummy" scrapedtitle = "SIN TITULO"
if item.extra == 'series': if '/serie' in item.url:
title = scrapedtitle.lower() title = scrapedtitle.lower()
epi = title.split("x") epi = title.split("x")
if len(epi) > 1: if len(epi) > 1:
@@ -855,50 +901,83 @@ def episodios(item):
item_local.url = host + "/secciones.php?sec=descargas&ap=contar_varios" item_local.url = host + "/secciones.php?sec=descargas&ap=contar_varios"
item_local.post = urllib.urlencode({name: value, "total_capis": total_capis, "tabla": tabla, "titulo": titulo_post}) item_local.post = urllib.urlencode({name: value, "total_capis": total_capis, "tabla": tabla, "titulo": titulo_post})
if year:
item_local.infoLabels['year'] = scrapertools.find_single_match(year, r'(\d{4})')
item_local.title = scrapedtitle item_local.title = scrapedtitle
itemlist.append(item_local.clone()) itemlist.append(item_local.clone())
# Llamamos a TMDB para que complete el episodio en InfoLabels # Llamamos a TMDB para que complete el episodio en InfoLabels
tmdb.set_infoLabels(itemlist, seekTmdb = True) tmdb.set_infoLabels(itemlist, seekTmdb = True)
if len(itemlist) > 1:
itemlist = sorted(itemlist, key=lambda it: (int(it.contentSeason), int(it.contentEpisodeNumber)))
# Pasada para maqullaje de los títulos obtenidos desde TMDB # Pasada para maqullaje de los títulos obtenidos desde TMDB
num_episodios = 1
num_temporada = 1
for item_local in itemlist: for item_local in itemlist:
title = item_local.title
# Si no hay datos de TMDB, pongo los datos locales que conozco # Si no hay datos de TMDB, pongo los datos locales que conozco
if item_local.infoLabels['aired']: if item_local.infoLabels['aired']:
year = scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})') item_local.infoLabels['year'] = scrapertools.find_single_match(str(item_local.infoLabels['aired']), r'\/(\d{4})')
else:
year = scrapertools.find_single_match(fecha, r'(\d{4})')
if not item_local.infoLabels['year']:
item_local.infoLabels['year'] = year
# Si son episodios múltiples, se toman los datos locales para nombre de episodio # Si son episodios múltiples, se toman los datos locales para nombre de episodio
if scrapertools.find_single_match(title, r'\d+x\d+.*?(\w+.*?\d+x\d+)'): if scrapertools.find_single_match(item_local.title, r'\d+x\d+.*?(\w+.*?\d+x\d+)'):
item_local.infoLabels['episodio_titulo'] = scrapertools.find_single_match(title, r'\d+x\d+.*?(\w+.*?\d+x\d+)') item_local.infoLabels['episodio_titulo'] = scrapertools.find_single_match(item_local.title, r'\d+x\d+.*?(\w+.*?\d+x\d+)')
item_local.title = '%sx%s - %s' % (str(item_local.contentSeason), str(item_local.contentEpisodeNumber).zfill(2), item_local.infoLabels['episodio_titulo'])
else:
item_local.title = '%sx%s -' % (str(item_local.contentSeason), str(item_local.contentEpisodeNumber).zfill(2))
rating = ''
if item_local.infoLabels['rating'] and item_local.infoLabels['rating'] != '0.0':
rating = float(item_local.infoLabels['rating'])
rating = round(rating, 1)
#Salvamos en número de episodios de la temporada
if num_temporada != item_local.contentSeason:
num_temporada = item_local.contentSeason
num_episodios = 0
if item_local.infoLabels['temporada_num_episodios']:
num_episodios = item_local.infoLabels['temporada_num_episodios']
#Preparamos el título para que sea compatible con Añadir Serie a Videoteca #Preparamos el título para que sea compatible con Añadir Serie a Videoteca
if item_local.infoLabels['episodio_titulo']: if item_local.infoLabels['episodio_titulo']:
item_local.title = '%sx%s %s, %s [%s]' % (str(item_local.contentSeason), item_local.contentEpisodeNumber, item_local.infoLabels['episodio_titulo'], item_local.contentSerieName, year) if "al" in item_local.title: #Si son episodios múltiples, ponemos nombre de serie
item_local.infoLabels['episodio_titulo'] = '%s [%s]' % (item_local.infoLabels['episodio_titulo'], year) item_local.title = '%s %s' % (item_local.title, item_local.contentSerieName)
item_local.infoLabels['episodio_titulo'] = '%s %s' % (scrapertools.find_single_match(item_local.title, r'(al \d+)'), item_local.contentSerieName)
else:
item_local.title = '%s %s' % (item_local.title, item_local.infoLabels['episodio_titulo'])
if item_local.infoLabels['year']:
item_local.infoLabels['episodio_titulo'] = '%s [%s]' % (item_local.infoLabels['episodio_titulo'], item_local.infoLabels['year'])
if rating:
item_local.infoLabels['episodio_titulo'] = '%s [%s]' % (item_local.infoLabels['episodio_titulo'], rating)
else: else:
item_local.title = '%sx%s %s [%s]' % (str(item_local.contentSeason), item_local.contentEpisodeNumber, item_local.contentSerieName, year) item_local.title = '%s %s' % (item_local.title, item_local.contentSerieName)
item_local.infoLabels['episodio_titulo'] = '%s [%s] [%s]' % (item_local.contentSerieName, item_local.infoLabels['year'], rating)
#Ahora maquillamos un poco los titulos dependiendo de si se han seleccionado títulos inteleigentes o no item_local.infoLabels['title'] = item_local.infoLabels['episodio_titulo']
if not config.get_setting("unify"): #Si Titulos Inteligentes NO seleccionados: añadir calidad, lenguaje
item_local.title = '%s [%s][%s]' % (item_local.title, item_local.quality, item_local.language) item_local.title = '%s [COLOR yellow][%s][/COLOR] [%s] [COLOR limegreen][%s][/COLOR] [COLOR red][%s][/COLOR]' % (item_local.title, item_local.infoLabels['year'], rating, item_local.quality, str(item_local.language))
#Quitamos campos vacíos #Quitamos campos vacíos
if item_local.infoLabels['episodio_titulo']: item_local.infoLabels['episodio_titulo'] = item_local.infoLabels['episodio_titulo'].replace(" []", "")
item_local.infoLabels['episodio_titulo'] = item_local.infoLabels['episodio_titulo'].replace("[]", "") item_local.title = item_local.title.replace(" []", "")
item_local.title = item_local.title.replace("[]", "") item_local.title = re.sub(r'\s\[COLOR \w+\]\[\]\[\/COLOR\]', '', item_local.title)
item_local.title = re.sub(r'\s\[COLOR \w+\]-\[\/COLOR\]', '', item_local.title)
if num_episodios < item_local.contentEpisodeNumber:
num_episodios = item_local.contentEpisodeNumber
if num_episodios and not item_local.infoLabels['temporada_num_episodios']:
item_local.infoLabels['temporada_num_episodios'] = num_episodios
#logger.debug("title=[" + item_local.title + "], url=[" + item_local.url + "], item=[" + str(item_local) + "]") #logger.debug("title=[" + item_local.title + "], url=[" + item_local.url + "], item=[" + str(item_local) + "]")
if config.get_videolibrary_support() and len(itemlist) > 0: if config.get_videolibrary_support() and len(itemlist) > 0:
itemlist.append(item.clone(title="[COLOR yelow]Añadir esta serie a la videoteca[/COLOR]", action="add_serie_to_library", extra="episodios")) title = ''
if item_local.infoLabels['temporada_num_episodios']:
title = ' [Temp. de %s ep.]' % item_local.infoLabels['temporada_num_episodios']
itemlist.append(item.clone(title="[COLOR yellow]Añadir esta serie a la videoteca[/COLOR]" + title, action="add_serie_to_library", extra="episodios"))
return itemlist return itemlist
def search(item, texto): def search(item, texto):
@@ -923,7 +1002,7 @@ def newest(categoria):
itemlist = [] itemlist = []
item = Item() item = Item()
try: try:
if categoria == 'torrent': if categoria == 'peliculas':
item.url = host + "/secciones.php?sec=ultimos_torrents" item.url = host + "/secciones.php?sec=ultimos_torrents"
item.extra = "novedades" item.extra = "novedades"
item.channel = "mejortorrent" item.channel = "mejortorrent"
+411 -16
View File
@@ -22,36 +22,431 @@
"visible": true "visible": true
}, },
{ {
"id": "include_in_newest_peliculas", "id": "clonenewpct1_ver_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Peliculas", "label": "Mostrar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_series", "id": "clonenewpct1_verificar_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Episodios de series", "label": "Verificar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_torrent", "id": "clonenewpct1_verificar_enlaces_veronline_validos",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - Torrent", "label": "¿Contar sólo enlaces 'verificados' en Ver Online?",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No') + !eq(-2,'No')"
}, },
{ {
"id": "include_in_newest_4k", "id": "clonenewpct1_excluir1_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 9,
"max_excl": 5,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 12,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 20,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_ver_enlaces_descargas",
"type": "list",
"label": "Mostrar enlaces Descargas",
"default": 0,
"enabled": true,
"visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas",
"type": "list",
"label": "Verificar enlaces Descargas",
"default": 1,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas_validos",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - 4K", "label": "¿Contar sólo enlaces 'verificados' en Descargar?",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
} }
] ]
} }
File diff suppressed because it is too large Load Diff
+416 -21
View File
@@ -19,41 +19,436 @@
"id": "include_in_global_search", "id": "include_in_global_search",
"type": "bool", "type": "bool",
"label": "Incluir en busqueda global", "label": "Incluir en busqueda global",
"default": false,
"enabled": true,
"visible": true
},
{
"id": "include_in_newest_peliculas",
"type": "bool",
"label": "Incluir en Novedades - Peliculas",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": true
}, },
{ {
"id": "include_in_newest_series", "id": "clonenewpct1_ver_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Episodios de series", "label": "Mostrar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_torrent", "id": "clonenewpct1_verificar_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Torrent", "label": "Verificar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_4k", "id": "clonenewpct1_verificar_enlaces_veronline_validos",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - 4K", "label": "¿Contar sólo enlaces 'verificados' en Ver Online?",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 9,
"max_excl": 5,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 12,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 20,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_ver_enlaces_descargas",
"type": "list",
"label": "Mostrar enlaces Descargas",
"default": 0,
"enabled": true,
"visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas",
"type": "list",
"label": "Verificar enlaces Descargas",
"default": 1,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas_validos",
"type": "bool",
"label": "¿Contar sólo enlaces 'verificados' en Descargar?",
"default": true,
"enabled": true,
"visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
} }
] ]
} }
File diff suppressed because it is too large Load Diff
+452 -8
View File
@@ -3,7 +3,7 @@
"name": "Torrentrapid", "name": "Torrentrapid",
"active": true, "active": true,
"adult": false, "adult": false,
"language": ["cast", "lat"], "language": ["*"],
"thumbnail": "torrentrapid.png", "thumbnail": "torrentrapid.png",
"banner": "torrentrapid.png", "banner": "torrentrapid.png",
"categories": [ "categories": [
@@ -11,6 +11,7 @@
"tvshow", "tvshow",
"anime", "anime",
"torrent", "torrent",
"latino",
"documentary" "documentary"
], ],
"settings": [ "settings": [
@@ -18,17 +19,444 @@
"id": "include_in_global_search", "id": "include_in_global_search",
"type": "bool", "type": "bool",
"label": "Incluir en busqueda global", "label": "Incluir en busqueda global",
"default": false, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": true
}, },
{
"id": "clonenewpct1_ver_enlaces_veronline",
"type": "list",
"label": "Mostrar enlaces Ver Online",
"default": 1,
"enabled": true,
"visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
},
{
"id": "clonenewpct1_verificar_enlaces_veronline",
"type": "list",
"label": "Verificar enlaces Ver Online",
"default": 1,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
},
{
"id": "clonenewpct1_verificar_enlaces_veronline_validos",
"type": "bool",
"label": "¿Contar sólo enlaces 'verificados' en Ver Online?",
"default": true,
"enabled": true,
"visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 9,
"max_excl": 5,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 12,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 20,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_ver_enlaces_descargas",
"type": "list",
"label": "Mostrar enlaces Descargas",
"default": 0,
"enabled": true,
"visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas",
"type": "list",
"label": "Verificar enlaces Descargas",
"default": 1,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas_validos",
"type": "bool",
"label": "¿Contar sólo enlaces 'verificados' en Descargar?",
"default": true,
"enabled": true,
"visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{ {
"id": "include_in_newest_peliculas", "id": "include_in_newest_peliculas",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - Peliculas", "label": "Incluir en Novedades - Peliculas",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": false
}, },
{ {
"id": "include_in_newest_series", "id": "include_in_newest_series",
@@ -36,15 +464,31 @@
"label": "Incluir en Novedades - Episodios de series", "label": "Incluir en Novedades - Episodios de series",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": false
}, },
{ {
"id": "include_in_newest_torrent", "id": "include_in_newest_anime",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - Torrent", "label": "Incluir en Novedades - Anime",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": false
},
{
"id": "include_in_newest_documentales",
"type": "bool",
"label": "Incluir en Novedades - Documentales",
"default": true,
"enabled": true,
"visible": false
},
{
"id": "include_in_newest_latino",
"type": "bool",
"label": "Incluir en Novedades - Documentales",
"default": true,
"enabled": true,
"visible": false
}, },
{ {
"id": "include_in_newest_4k", "id": "include_in_newest_4k",
@@ -52,7 +496,7 @@
"label": "Incluir en Novedades - 4K", "label": "Incluir en Novedades - 4K",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": false
} }
] ]
} }
File diff suppressed because it is too large Load Diff
+416 -21
View File
@@ -18,41 +18,436 @@
"id": "include_in_global_search", "id": "include_in_global_search",
"type": "bool", "type": "bool",
"label": "Incluir en busqueda global", "label": "Incluir en busqueda global",
"default": false,
"enabled": true,
"visible": true
},
{
"id": "include_in_newest_peliculas",
"type": "bool",
"label": "Incluir en Novedades - Peliculas",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": true
}, },
{ {
"id": "include_in_newest_series", "id": "clonenewpct1_ver_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Episodios de series", "label": "Mostrar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_torrent", "id": "clonenewpct1_verificar_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Torrent", "label": "Verificar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_4k", "id": "clonenewpct1_verificar_enlaces_veronline_validos",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - 4K", "label": "¿Contar sólo enlaces 'verificados' en Ver Online?",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 9,
"max_excl": 5,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 12,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 20,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_ver_enlaces_descargas",
"type": "list",
"label": "Mostrar enlaces Descargas",
"default": 0,
"enabled": true,
"visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas",
"type": "list",
"label": "Verificar enlaces Descargas",
"default": 1,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas_validos",
"type": "bool",
"label": "¿Contar sólo enlaces 'verificados' en Descargar?",
"default": true,
"enabled": true,
"visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
} }
] ]
} }
File diff suppressed because it is too large Load Diff
+416 -21
View File
@@ -18,41 +18,436 @@
"id": "include_in_global_search", "id": "include_in_global_search",
"type": "bool", "type": "bool",
"label": "Incluir en busqueda global", "label": "Incluir en busqueda global",
"default": false,
"enabled": true,
"visible": true
},
{
"id": "include_in_newest_peliculas",
"type": "bool",
"label": "Incluir en Novedades - Peliculas",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": true
}, },
{ {
"id": "include_in_newest_series", "id": "clonenewpct1_ver_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Episodios de series", "label": "Mostrar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_torrent", "id": "clonenewpct1_verificar_enlaces_veronline",
"type": "bool", "type": "list",
"label": "Incluir en Novedades - Torrent", "label": "Verificar enlaces Ver Online",
"default": true, "default": 1,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20"
]
}, },
{ {
"id": "include_in_newest_4k", "id": "clonenewpct1_verificar_enlaces_veronline_validos",
"type": "bool", "type": "bool",
"label": "Incluir en Novedades - 4K", "label": "¿Contar sólo enlaces 'verificados' en Ver Online?",
"default": true, "default": true,
"enabled": true, "enabled": true,
"visible": true "visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 9,
"max_excl": 5,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 12,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 20,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_veronline",
"type": "list",
"label": "Excluir Servidores para Ver Online",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_ver_enlaces_descargas",
"type": "list",
"label": "Mostrar enlaces Descargas",
"default": 0,
"enabled": true,
"visible": true,
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas",
"type": "list",
"label": "Verificar enlaces Descargas",
"default": 1,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Todos",
"1",
"5",
"10",
"20",
"30",
"50",
"100"
]
},
{
"id": "clonenewpct1_verificar_enlaces_descargas_validos",
"type": "bool",
"label": "¿Contar sólo enlaces 'verificados' en Descargar?",
"default": true,
"enabled": true,
"visible": "!eq(-1,'No') + !eq(-2,'No')"
},
{
"id": "clonenewpct1_excluir1_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-3,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir2_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Ver Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir3_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir4_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
},
{
"id": "clonenewpct1_excluir5_enlaces_descargas",
"type": "list",
"label": "Excluir Servidores para Descargas",
"default": 0,
"enabled": true,
"visible": "!eq(-1,'No')",
"lvalues": [
"No",
"Bankupload",
"Clipwatching",
"Flashx",
"Katfile",
"Mega",
"Mexashare",
"Movshare",
"Mowvideo",
"Openload",
"Powvideo",
"Rapidgator",
"Streamango",
"Streamcloud",
"Streame",
"Streaminto",
"Streamplay",
"Thevideo",
"Turbobit",
"Uploadedto",
"Uptobox",
"Userscloud",
"Vidabc",
"Vidspot"
]
} }
] ]
} }
File diff suppressed because it is too large Load Diff
+27 -21
View File
@@ -169,7 +169,7 @@ def add_languages(title, languages):
def set_color(title, category): def set_color(title, category):
#logger.info() #logger.info()
color_scheme = {'otro': 'white'} color_scheme = {'otro': 'white', 'dual': 'white'}
#logger.debug('category antes de remove: %s' % category) #logger.debug('category antes de remove: %s' % category)
category = remove_format(category).lower() category = remove_format(category).lower()
@@ -209,6 +209,7 @@ def set_lang(language):
'sub: español', 'vs', 'zs', 'vs', 'english-spanish subs', 'ingles sub espanol'] 'sub: español', 'vs', 'zs', 'vs', 'english-spanish subs', 'ingles sub espanol']
vos=['vos', 'sub ingles', 'engsub', 'vosi','ingles subtitulado', 'sub: ingles'] vos=['vos', 'sub ingles', 'engsub', 'vosi','ingles subtitulado', 'sub: ingles']
vo=['ingles', 'en','vo', 'ovos', 'eng','v.o', 'english'] vo=['ingles', 'en','vo', 'ovos', 'eng','v.o', 'english']
dual=['dual']
language = scrapertools.decodeHtmlentities(language) language = scrapertools.decodeHtmlentities(language)
old_lang = language old_lang = language
@@ -227,6 +228,8 @@ def set_lang(language):
language = 'vos' language = 'vos'
elif language in vo: elif language in vo:
language = 'vo' language = 'vo'
elif language in dual:
language = 'dual'
else: else:
language = 'otro' language = 'otro'
@@ -322,7 +325,15 @@ def title_format(item):
elif item.contentTitle: elif item.contentTitle:
# Si el titulo no tiene contentSerieName entonces se formatea como pelicula # Si el titulo no tiene contentSerieName entonces se formatea como pelicula
item.title = '%s' % set_color(item.contentTitle, 'movie') saga = False
if 'saga' in item.title.lower():
item.title = '%s [Saga]' % set_color(item.contentTitle, 'movie')
elif 'miniserie' in item.title.lower():
item.title = '%s [Miniserie]' % set_color(item.contentTitle, 'movie')
elif 'extend' in item.title.lower():
item.title = '%s [V.Extend.]' % set_color(item.contentTitle, 'movie')
else:
item.title = '%s' % set_color(item.contentTitle, 'movie')
if item.contentType=='movie': if item.contentType=='movie':
if item.context: if item.context:
if isinstance(item.context, list): if isinstance(item.context, list):
@@ -389,7 +400,7 @@ def title_format(item):
item.title = '%s %s' % (item.title, set_color(rating, color_rating)) item.title = '%s %s' % (item.title, set_color(rating, color_rating))
# Damos formato a la calidad si existiera y lo agregamos al titulo # Damos formato a la calidad si existiera y lo agregamos al titulo
if item.quality: if item.quality and isinstance(item.quality, str):
quality = item.quality.strip() quality = item.quality.strip()
item.title = '%s %s' % (item.title, set_color(quality, 'quality')) item.title = '%s %s' % (item.title, set_color(quality, 'quality'))
else: else:
@@ -459,30 +470,25 @@ def title_format(item):
def thumbnail_type(item): def thumbnail_type(item):
#logger.info() #logger.info()
# Se comprueba que tipo de thumbnail se utilizara en findvideos, # Se comprueba que tipo de thumbnail se utilizara en findvideos,
# Poster o Logo del servidor # Poster o Logo del servidor
thumb_type = config.get_setting('video_thumbnail_type') thumb_type = config.get_setting('video_thumbnail_type')
#logger.debug('thumb_type: %s' % thumb_type)
info = item.infoLabels info = item.infoLabels
#logger.debug('item.thumbnail: %s'%item.thumbnail) item.contentThumbnail = item.thumbnail
if info:
if info['thumbnail'] !='':
item.contentThumbnail = info['thumbnail']
if info['thumbnail'] !='': if item.action == 'play':
item.contentThumbnail = info['thumbnail'] if thumb_type == 0:
else: if info['thumbnail'] != '':
item.contentThumbnail = item.thumbnail item.thumbnail = info['thumbnail']
elif thumb_type == 1:
if item.action == 'play': from core.servertools import get_server_parameters
if thumb_type == 0: #logger.debug('item.server: %s'%item.server)
if info and info['thumbnail'] != '': server_parameters = get_server_parameters(item.server.lower())
item.thumbnail = info['thumbnail'] item.thumbnail = server_parameters.get("thumbnail", "")
elif thumb_type == 1:
from core.servertools import get_server_parameters
#logger.debug('item.server: %s'%item.server)
server_parameters = get_server_parameters(item.server.lower())
item.thumbnail = server_parameters.get("thumbnail", "")
#logger.debug('thumbnail: %s' % item.thumb)
return item.thumbnail return item.thumbnail