Merge remote-tracking branch 'alfa-addon/master'

This commit is contained in:
unknown
2017-09-27 08:21:20 -03:00
185 changed files with 312 additions and 2105 deletions
+1 -1
View File
@@ -7,7 +7,7 @@
<setting type="sep"/> <setting type="sep"/>
<setting id="default_action" type="enum" lvalues="30006|30007|30008" label="30005" default="0"/> <setting id="default_action" type="enum" lvalues="30006|30007|30008" label="30005" default="0"/>
<setting id="thumbnail_type" type="enum" lvalues="30011|30012|30200" label="30010" default="2"/> <setting id="thumbnail_type" type="enum" lvalues="30011|30012|30200" label="30010" default="2"/>
<setting id="channel_language" type="labelenum" values="all|es|en|it" label="30019" default="all"/> <setting id="channel_language" type="labelenum" values="all|cast|lat" label="30019" default="all"/>
<setting id="debug" type="bool" label="30003" default="false"/> <setting id="debug" type="bool" label="30003" default="false"/>
<setting label="Uso de servidores" type="lsep"/> <setting label="Uso de servidores" type="lsep"/>
<setting id="resolve_priority" type="enum" label="Método prioritario" values="Free primero|Premium primero|Debriders primero" default="0"/> <setting id="resolve_priority" type="enum" label="Método prioritario" values="Free primero|Premium primero|Debriders primero" default="0"/>
+6 -6
View File
@@ -1,5 +1,5 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<addon id="plugin.video.alfa" name="Alfa" version="2.0.6" provider-name="Alfa Addon"> <addon id="plugin.video.alfa" name="Alfa" version="2.1.0" provider-name="Alfa Addon">
<requires> <requires>
<import addon="xbmc.python" version="2.1.0"/> <import addon="xbmc.python" version="2.1.0"/>
<import addon="script.module.libtorrent" optional="true"/> <import addon="script.module.libtorrent" optional="true"/>
@@ -19,11 +19,11 @@
</assets> </assets>
<news>[B]Estos son los cambios para esta versión:[/B] <news>[B]Estos son los cambios para esta versión:[/B]
[COLOR green][B]Canales agregados y arreglos[/B][/COLOR] [COLOR green][B]Canales agregados y arreglos[/B][/COLOR]
» pedropolis » cinecalidad » canalpelis » hdfull
» openload » cloudy » xdvideos » playmax
» uptobox ¤ arreglos internos » cinetux » gnula
» flashx » rapidvideo
[COLOR green]Gracias a [COLOR yellow]msdos[/COLOR] y [COLOR yellow]prpeaprendiz[/COLOR] por su colaboración en esta versión[/COLOR] ¤ arreglos internos
</news> </news>
<description lang="es">Navega con Kodi por páginas web para ver sus videos de manera fácil.</description> <description lang="es">Navega con Kodi por páginas web para ver sus videos de manera fácil.</description>
<summary lang="en">Browse web pages using Kodi</summary> <summary lang="en">Browse web pages using Kodi</summary>
+2 -3
View File
@@ -3,7 +3,7 @@
"name": "Allcalidad", "name": "Allcalidad",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s22.postimg.org/irnlwuizh/allcalidad1.png", "thumbnail": "https://s22.postimg.org/irnlwuizh/allcalidad1.png",
"banner": "https://s22.postimg.org/9y1athlep/allcalidad2.png", "banner": "https://s22.postimg.org/9y1athlep/allcalidad2.png",
"version": 1, "version": 1,
@@ -15,8 +15,7 @@
], ],
"categories": [ "categories": [
"movie", "movie",
"direct", "direct"
"latino"
], ],
"settings": [ "settings": [
{ {
+1 -2
View File
@@ -1,7 +1,7 @@
{ {
"id": "allpeliculas", "id": "allpeliculas",
"name": "Allpeliculas", "name": "Allpeliculas",
"language": "es", "language": ["lat"],
"active": true, "active": true,
"adult": false, "adult": false,
"version": 1, "version": 1,
@@ -31,7 +31,6 @@
"banner": "allpeliculas.png", "banner": "allpeliculas.png",
"categories": [ "categories": [
"movie", "movie",
"latino",
"vos", "vos",
"tvshow" "tvshow"
], ],
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Alltorrent", "name": "Alltorrent",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://imgur.com/sLaXHvp.png", "thumbnail": "http://imgur.com/sLaXHvp.png",
"version": 1, "version": 1,
"changes": [ "changes": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "AnimeFLV", "name": "AnimeFLV",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "animeflv.png", "thumbnail": "animeflv.png",
"banner": "animeflv.png", "banner": "animeflv.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Animeflv.ME", "name": "Animeflv.ME",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "http://i.imgur.com/x9AdvBx.png", "thumbnail": "http://i.imgur.com/x9AdvBx.png",
"banner": "http://i.imgur.com/dTZwCPq.png", "banner": "http://i.imgur.com/dTZwCPq.png",
"version": 1, "version": 1,
+2 -3
View File
@@ -3,13 +3,12 @@
"name": "AnimeFLV.RU", "name": "AnimeFLV.RU",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "http://i.imgur.com/5nRR9qq.png", "thumbnail": "http://i.imgur.com/5nRR9qq.png",
"banner": "animeflv_ru.png", "banner": "animeflv_ru.png",
"version": 1, "version": 1,
"compatible": { "compatible": {
"python": "2.7.9", "python": "2.7.9"
"addon_version": "4.2.1"
}, },
"changes": { "changes": {
"change": [ "change": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Animeid", "name": "Animeid",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "animeid.png", "thumbnail": "animeid.png",
"banner": "animeid.png", "banner": "animeid.png",
"version": 1, "version": 1,
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "AnimesHD", "name": "AnimesHD",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "https://s21.postimg.org/b43i3ljav/animeshd.png", "thumbnail": "https://s21.postimg.org/b43i3ljav/animeshd.png",
"banner": "https://s4.postimg.org/lulxulmql/animeshd-banner.png", "banner": "https://s4.postimg.org/lulxulmql/animeshd-banner.png",
"version": 1, "version": 1,
@@ -22,7 +22,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"anime" "anime"
] ]
} }
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "AniToons TV", "name": "AniToons TV",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "http://i.imgur.com/9Zu5NBc.png", "thumbnail": "http://i.imgur.com/9Zu5NBc.png",
"banner": "http://i.imgur.com/JQSXCaB.png", "banner": "http://i.imgur.com/JQSXCaB.png",
"version": 1, "version": 1,
@@ -19,7 +19,6 @@
], ],
"categories": [ "categories": [
"tvshow", "tvshow",
"latino",
"anime" "anime"
] ]
} }
@@ -1,7 +1,7 @@
{ {
"id": "areadocumental", "id": "areadocumental",
"name": "Area-Documental", "name": "Area-Documental",
"language": "es", "language": ["cast", "lat"],
"adult": false, "adult": false,
"active": true, "active": true,
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Bajui2", "name": "Bajui2",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "bajui.png", "thumbnail": "bajui.png",
"banner": "bajui.png", "banner": "bajui.png",
"fanart": "bajui.png", "fanart": "bajui.png",
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Beeg", "name": "Beeg",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "beeg.png", "thumbnail": "beeg.png",
"banner": "beeg.png", "banner": "beeg.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Bityouth", "name": "Bityouth",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://s6.postimg.org/6ash180up/bityoulogo.png", "thumbnail": "http://s6.postimg.org/6ash180up/bityoulogo.png",
"banner": "bityouth.png", "banner": "bityouth.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "BorrachodeTorrent", "name": "BorrachodeTorrent",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://imgur.com/BePrYmy.png", "thumbnail": "http://imgur.com/BePrYmy.png",
"version": 1, "version": 1,
"changes": [ "changes": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Bricocine", "name": "Bricocine",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://s6.postimg.org/9u8m1ep8x/bricocine.jpg", "thumbnail": "http://s6.postimg.org/9u8m1ep8x/bricocine.jpg",
"banner": "bricocine.png", "banner": "bricocine.png",
"version": 1, "version": 1,
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "CanalPelis", "name": "CanalPelis",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"fanart": "https://raw.githubusercontent.com/Inter95/tvguia/master/thumbnails/canalpelisbg.jpg", "fanart": "https://raw.githubusercontent.com/Inter95/tvguia/master/thumbnails/canalpelisbg.jpg",
"thumbnail": "http://www.canalpelis.com/wp-content/uploads/2016/11/logo_web.gif", "thumbnail": "http://www.canalpelis.com/wp-content/uploads/2016/11/logo_web.gif",
"banner": "", "banner": "",
@@ -15,7 +15,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie", "movie",
"tvshow", "tvshow",
"vos" "vos"
+1 -1
View File
@@ -338,7 +338,7 @@ def episodios(item):
itemlist.sort(key=lambda it: int(it.infoLabels['episode']), itemlist.sort(key=lambda it: int(it.infoLabels['episode']),
reverse=config.get_setting('orden_episodios', __channel__)) reverse=config.get_setting('orden_episodios', __channel__))
tmdb.set_infoLabels_itemlist(itemlist, __modo_grafico__)
# Opción "Añadir esta serie a la videoteca" # Opción "Añadir esta serie a la videoteca"
if config.get_videolibrary_support() and len(itemlist) > 0: if config.get_videolibrary_support() and len(itemlist) > 0:
itemlist.append(Item(channel=__channel__, title="Añadir esta serie a la videoteca", url=item.url, itemlist.append(Item(channel=__channel__, title="Añadir esta serie a la videoteca", url=item.url,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Canalporno", "name": "Canalporno",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "http://i.imgur.com/gAbPcvT.png?1", "thumbnail": "http://i.imgur.com/gAbPcvT.png?1",
"banner": "canalporno.png", "banner": "canalporno.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "Cartoon-Latino", "name": "Cartoon-Latino",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "http://i.imgur.com/wk6fRDZ.png", "thumbnail": "http://i.imgur.com/wk6fRDZ.png",
"banner": "http://i.imgur.com/115c59F.png", "banner": "http://i.imgur.com/115c59F.png",
"version": 1, "version": 1,
@@ -14,7 +14,6 @@
} }
], ],
"categories": [ "categories": [
"tvshow", "tvshow"
"latino"
] ]
} }
@@ -3,7 +3,7 @@
"name": "CiberDocumentales", "name": "CiberDocumentales",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "https://s9.postimg.org/secdb5s8v/ciberdocumentales.png", "thumbnail": "https://s9.postimg.org/secdb5s8v/ciberdocumentales.png",
"banner": "https://s1.postimg.org/sa486z0of/ciberdocumentales_banner.png", "banner": "https://s1.postimg.org/sa486z0of/ciberdocumentales_banner.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "CineAsiaEnLinea", "name": "CineAsiaEnLinea",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "http://i.imgur.com/5KOU8uy.png?3", "thumbnail": "http://i.imgur.com/5KOU8uy.png?3",
"banner": "cineasiaenlinea.png", "banner": "cineasiaenlinea.png",
"version": 1, "version": 1,
+1 -5
View File
@@ -1,12 +1,9 @@
{ {
"id": "cinecalidad", "id": "cinecalidad",
"name": "CineCalidad", "name": "CineCalidad",
"compatible": {
"addon_version": "4.3"
},
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "https://s31.postimg.org/puxmvsi7v/cinecalidad.png", "thumbnail": "https://s31.postimg.org/puxmvsi7v/cinecalidad.png",
"banner": "https://s32.postimg.org/kihkdpx1x/banner_cinecalidad.png", "banner": "https://s32.postimg.org/kihkdpx1x/banner_cinecalidad.png",
"version": 1, "version": 1,
@@ -33,7 +30,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "Cinefox", "name": "Cinefox",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"version": 1, "version": 1,
"thumbnail": "cinefox.png", "thumbnail": "cinefox.png",
"banner": "cinefox.png", "banner": "cinefox.png",
@@ -28,7 +28,6 @@
"categories": [ "categories": [
"movie", "movie",
"tvshow", "tvshow",
"latino",
"vos" "vos"
], ],
"settings": [ "settings": [
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "CineFoxTV", "name": "CineFoxTV",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s28.postimg.org/lytn2q1tp/cinefoxtv.png", "thumbnail": "https://s28.postimg.org/lytn2q1tp/cinefoxtv.png",
"banner": "cinefoxtv.png", "banner": "cinefoxtv.png",
"version": 1, "version": 1,
@@ -22,7 +22,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "CineHindi", "name": "CineHindi",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "cinehindi.png", "thumbnail": "cinehindi.png",
"banner": "http://i.imgur.com/cau9TVe.png", "banner": "http://i.imgur.com/cau9TVe.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Cinetemagay", "name": "Cinetemagay",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "cinetemagay.png", "thumbnail": "cinetemagay.png",
"banner": "cinetemagay.png", "banner": "cinetemagay.png",
"version": 1, "version": 1,
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "Cinetux", "name": "Cinetux",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "cinetux.png", "thumbnail": "cinetux.png",
"banner": "cinetux.png", "banner": "cinetux.png",
"fanart": "cinetux.jpg", "fanart": "cinetux.jpg",
@@ -27,7 +27,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"direct", "direct",
"movie" "movie"
], ],
+12 -34
View File
@@ -1,7 +1,5 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import urlparse
from core import httptools from core import httptools
from core import scrapertools from core import scrapertools
from core import servertools from core import servertools
@@ -48,13 +46,11 @@ def mainlist(item):
"/0/Genre.png", "/0/Genre.png",
text_color=color1)) text_color=color1))
url = urlparse.urljoin(CHANNEL_HOST, "genero/documental/")
itemlist.append(item.clone(title="Documentales", text_bold=True, text_color=color2, action="")) itemlist.append(item.clone(title="Documentales", text_bold=True, text_color=color2, action=""))
itemlist.append(item.clone(action="peliculas", title=" Novedades", url=url, text_color=color1, itemlist.append(item.clone(action="peliculas", title=" Novedades", url=CHANNEL_HOST + "genero/documental/", text_color=color1,
thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres"
"/0/Documentaries.png")) "/0/Documentaries.png"))
url = urlparse.urljoin(CHANNEL_HOST, "genero/documental/?orderby=title&order=asc&gdsr_order=asc") itemlist.append(item.clone(action="peliculas", title=" Por orden alfabético", text_color=color1, url=CHANNEL_HOST + "genero/documental/?orderby=title&order=asc&gdsr_order=asc",
itemlist.append(item.clone(action="peliculas", title=" Por orden alfabético", text_color=color1, url=url,
thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres" thumbnail="https://raw.githubusercontent.com/master-1970/resources/master/images/genres"
"/0/A-Z.png")) "/0/A-Z.png"))
itemlist.append(item.clone(title="", action="")) itemlist.append(item.clone(title="", action=""))
@@ -100,7 +96,7 @@ def newest(categoria):
itemlist.pop() itemlist.pop()
elif categoria == 'documentales': elif categoria == 'documentales':
item.url = urlparse.urljoin(CHANNEL_HOST, "genero/documental/") item.url = CHANNEL_HOST + "genero/documental/"
item.action = "peliculas" item.action = "peliculas"
itemlist = peliculas(item) itemlist = peliculas(item)
@@ -108,7 +104,7 @@ def newest(categoria):
itemlist.pop() itemlist.pop()
elif categoria == 'infantiles': elif categoria == 'infantiles':
item.url = urlparse.urljoin(CHANNEL_HOST, "genero/infantil/") item.url = CHANNEL_HOST + "genero/infantil/"
item.action = "peliculas" item.action = "peliculas"
itemlist = peliculas(item) itemlist = peliculas(item)
@@ -130,7 +126,6 @@ def peliculas(item):
itemlist = [] itemlist = []
item.text_color = color2 item.text_color = color2
# Descarga la página
data = httptools.downloadpage(item.url).data data = httptools.downloadpage(item.url).data
patron = '(?s)class="(?:result-item|item movies)">.*?<img src="([^"]+)' patron = '(?s)class="(?:result-item|item movies)">.*?<img src="([^"]+)'
patron += '.*?alt="([^"]+)"' patron += '.*?alt="([^"]+)"'
@@ -156,11 +151,6 @@ def peliculas(item):
if year: if year:
new_item.infoLabels['year'] = int(year) new_item.infoLabels['year'] = int(year)
itemlist.append(new_item) itemlist.append(new_item)
try:
# tmdb.set_infoLabels(itemlist, __modo_grafico__)
a = 1
except:
pass
# Extrae el paginador # Extrae el paginador
next_page_link = scrapertools.find_single_match(data, '<link rel="next" href="([^"]+)') next_page_link = scrapertools.find_single_match(data, '<link rel="next" href="([^"]+)')
@@ -218,7 +208,6 @@ def generos(item):
scrapedtitle = unicode(scrapedtitle, "utf8").capitalize().encode("utf8") scrapedtitle = unicode(scrapedtitle, "utf8").capitalize().encode("utf8")
if scrapedtitle == "Erotico" and config.get_setting("adult_mode") == 0: if scrapedtitle == "Erotico" and config.get_setting("adult_mode") == 0:
continue continue
itemlist.append(item.clone(action="peliculas", title=scrapedtitle, url=scrapedurl)) itemlist.append(item.clone(action="peliculas", title=scrapedtitle, url=scrapedurl))
return itemlist return itemlist
@@ -228,9 +217,9 @@ def idioma(item):
logger.info() logger.info()
itemlist = [] itemlist = []
itemlist.append(item.clone(action="peliculas", title="Español", url="http://www.cinetux.net/idioma/espanol/")) itemlist.append(item.clone(action="peliculas", title="Español", url= CHANNEL_HOST + "idioma/espanol/"))
itemlist.append(item.clone(action="peliculas", title="Latino", url="http://www.cinetux.net/idioma/latino/")) itemlist.append(item.clone(action="peliculas", title="Latino", url= CHANNEL_HOST + "idioma/latino/"))
itemlist.append(item.clone(action="peliculas", title="VOSE", url="http://www.cinetux.net/idioma/subtitulado/")) itemlist.append(item.clone(action="peliculas", title="VOSE", url= CHANNEL_HOST + "idioma/subtitulado/"))
return itemlist return itemlist
@@ -290,7 +279,6 @@ def findvideos(item):
else: else:
itemlist.append(item.clone(title="No hay enlaces disponibles", action="", text_color=color3)) itemlist.append(item.clone(title="No hay enlaces disponibles", action="", text_color=color3))
return itemlist return itemlist
@@ -342,12 +330,12 @@ def bloque_enlaces(data, filtro_idioma, dict_idiomas, type, item):
if filtro_idioma == 3 or item.filtro: if filtro_idioma == 3 or item.filtro:
lista_enlaces.append(item.clone(title=title, action="play", text_color=color2, lista_enlaces.append(item.clone(title=title, action="play", text_color=color2,
url=scrapedurl, server=scrapedserver, idioma=scrapedlanguage, url=scrapedurl, server=scrapedserver, idioma=scrapedlanguage,
extra=item.url)) extra=item.url, contentThumbnail = item.thumbnail))
else: else:
idioma = dict_idiomas[language] idioma = dict_idiomas[language]
if idioma == filtro_idioma: if idioma == filtro_idioma:
lista_enlaces.append(item.clone(title=title, text_color=color2, action="play", url=scrapedurl, lista_enlaces.append(item.clone(title=title, text_color=color2, action="play", url=scrapedurl,
extra=item.url)) extra=item.url, contentThumbnail = item.thumbnail))
else: else:
if language not in filtrados: if language not in filtrados:
filtrados.append(language) filtrados.append(language)
@@ -363,7 +351,6 @@ def bloque_enlaces(data, filtro_idioma, dict_idiomas, type, item):
def play(item): def play(item):
logger.info() logger.info()
itemlist = [] itemlist = []
video_urls = []
if "api.cinetux" in item.url: if "api.cinetux" in item.url:
data = httptools.downloadpage(item.url, headers={'Referer': item.extra}).data.replace("\\", "") data = httptools.downloadpage(item.url, headers={'Referer': item.extra}).data.replace("\\", "")
id = scrapertools.find_single_match(data, 'img src="[^#]+#(.*?)"') id = scrapertools.find_single_match(data, 'img src="[^#]+#(.*?)"')
@@ -379,15 +366,6 @@ def play(item):
scrapedurl = httptools.downloadpage(scrapedurl, follow_redirects=False, only_headers=True).headers.get( scrapedurl = httptools.downloadpage(scrapedurl, follow_redirects=False, only_headers=True).headers.get(
"location", "") "location", "")
item.url = scrapedurl item.url = scrapedurl
else: item.thumbnail = item.contentThumbnail
return [item] item.server = servertools.get_server_from_url(item.url)
itemlist.append( return [item]
Item(channel = item.channel,
action = "play",
fulltitle = item.fulltitle,
thumbnail = item.thumbnail,
server = "",
url = item.url
))
itemlist = servertools.get_servers_itemlist(itemlist)
return itemlist
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "ClasicoFilm", "name": "ClasicoFilm",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://i.imgur.com/F7sevVu.jpg?1", "thumbnail": "http://i.imgur.com/F7sevVu.jpg?1",
"banner": "clasicofilm.png", "banner": "clasicofilm.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "copiapop", "id": "copiapop",
"name": "Copiapop/Diskokosmiko", "name": "Copiapop/Diskokosmiko",
"language": "es", "language": ["cast", "lat"],
"active": true, "active": true,
"adult": false, "adult": false,
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Crimenes Imperfectos", "name": "Crimenes Imperfectos",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"banner": "crimenes.png", "banner": "crimenes.png",
"thumbnail": "crimenes.png", "thumbnail": "crimenes.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "crunchyroll", "id": "crunchyroll",
"name": "Crunchyroll", "name": "Crunchyroll",
"language": "es", "language": ["cast", "lat"],
"active": true, "active": true,
"adult": false, "adult": false,
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Cuelgame", "name": "Cuelgame",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"version": 1, "version": 1,
"changes": [ "changes": [
{ {
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Cumlouder", "name": "Cumlouder",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "cumlouder.png", "thumbnail": "cumlouder.png",
"banner": "cumlouder.png", "banner": "cumlouder.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "datoporn", "id": "datoporn",
"name": "DatoPorn", "name": "DatoPorn",
"language": "es", "language": ["*"],
"active": true, "active": true,
"adult": true, "adult": true,
"changes": [ "changes": [
@@ -1,7 +1,7 @@
{ {
"id": "descargacineclasico", "id": "descargacineclasico",
"name": "descargacineclasico", "name": "descargacineclasico",
"language": "es", "language": ["cast"],
"active": true, "active": true,
"adult": false, "adult": false,
"version": 1, "version": 1,
+1 -2
View File
@@ -1,7 +1,7 @@
{ {
"id": "descargasmix", "id": "descargasmix",
"name": "DescargasMIX", "name": "DescargasMIX",
"language": "es", "language": ["cast", "lat"],
"active": true, "active": true,
"version": 1, "version": 1,
"adult": false, "adult": false,
@@ -31,7 +31,6 @@
"banner": "descargasmix.png", "banner": "descargasmix.png",
"categories": [ "categories": [
"movie", "movie",
"latino",
"vos", "vos",
"torrent", "torrent",
"documentary", "documentary",
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "Discoverymx", "name": "Discoverymx",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "discoverymx.png", "thumbnail": "discoverymx.png",
"banner": "discoverymx.png", "banner": "discoverymx.png",
"version": 1, "version": 1,
@@ -18,7 +18,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"documentary" "documentary"
] ]
} }
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Divxatope", "name": "Divxatope",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "divxatope.png", "thumbnail": "divxatope.png",
"banner": "divxatope.png", "banner": "divxatope.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Divxtotal", "name": "Divxtotal",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://imgur.com/Madj03A.jpg", "thumbnail": "http://imgur.com/Madj03A.jpg",
"version": 1, "version": 1,
"changes": [ "changes": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "DocumaniaTV", "name": "DocumaniaTV",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "http://i.imgur.com/qMR9sg9.png", "thumbnail": "http://i.imgur.com/qMR9sg9.png",
"banner": "documaniatv.png", "banner": "documaniatv.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "Documentales Online", "name": "Documentales Online",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "http://i.imgur.com/fsrnC4m.jpg", "thumbnail": "http://i.imgur.com/fsrnC4m.jpg",
"version": 1, "version": 1,
"changes": [ "changes": [
+1 -5
View File
@@ -1,17 +1,13 @@
{ {
"id": "doomtv", "id": "doomtv",
"name": "doomtv", "name": "doomtv",
"compatible": {
"addon_version": "4.3"
},
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s2.postimg.org/jivgi4ak9/doomtv.png", "thumbnail": "https://s2.postimg.org/jivgi4ak9/doomtv.png",
"banner": "https://s32.postimg.org/6gxyripvp/doomtv_banner.png", "banner": "https://s32.postimg.org/6gxyripvp/doomtv_banner.png",
"version": 1, "version": 1,
"categories": [ "categories": [
"latino",
"movie", "movie",
"direct" "direct"
], ],
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "DoramasTV", "name": "DoramasTV",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "doramastv.png", "thumbnail": "doramastv.png",
"banner": "doramastv.png", "banner": "doramastv.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Descargas", "name": "Descargas",
"active": false, "active": false,
"adult": false, "adult": false,
"language": "es", "language": ["*"],
"version": 1, "version": 1,
"changes": [ "changes": [
{ {
@@ -3,7 +3,7 @@
"name": "Trailers ecartelera", "name": "Trailers ecartelera",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "ecarteleratrailers.png", "thumbnail": "ecarteleratrailers.png",
"banner": "ecarteleratrailers.png", "banner": "ecarteleratrailers.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Elite Torrent", "name": "Elite Torrent",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "elitetorrent.png", "thumbnail": "elitetorrent.png",
"banner": "elitetorrent.png", "banner": "elitetorrent.png",
"version": 2, "version": 2,
@@ -3,7 +3,7 @@
"name": "El señor del anillo", "name": "El señor del anillo",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "elsenordelanillo.png", "thumbnail": "elsenordelanillo.png",
"banner": "elsenordelanillo.png", "banner": "elsenordelanillo.png",
"version": 1, "version": 1,
@@ -18,7 +18,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
] ]
} }
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Eporner", "name": "Eporner",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "eporner.png", "thumbnail": "eporner.png",
"banner": "eporner.png", "banner": "eporner.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Erotik", "name": "Erotik",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "http://www.youfreeporntube.com/uploads/custom-logo.png", "thumbnail": "http://www.youfreeporntube.com/uploads/custom-logo.png",
"banner": "http://www.youfreeporntube.com/uploads/custom-logo.png", "banner": "http://www.youfreeporntube.com/uploads/custom-logo.png",
"version": 1, "version": 1,
+1 -5
View File
@@ -1,12 +1,9 @@
{ {
"id": "estadepelis", "id": "estadepelis",
"name": "Estadepelis", "name": "Estadepelis",
"compatible": {
"addon_version": "4.3"
},
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s24.postimg.org/nsgit7fhh/estadepelis.png", "thumbnail": "https://s24.postimg.org/nsgit7fhh/estadepelis.png",
"banner": "https://s28.postimg.org/ud0l032ul/estadepelis_banner.png", "banner": "https://s28.postimg.org/ud0l032ul/estadepelis_banner.png",
"version": 1, "version": 1,
@@ -33,7 +30,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
+3 -2
View File
@@ -3,7 +3,7 @@
"name": "EstrenosGo", "name": "EstrenosGo",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"fanart": "https://github.com/master-1970/resources/raw/master/images/fanart/estrenosgo.png", "fanart": "https://github.com/master-1970/resources/raw/master/images/fanart/estrenosgo.png",
"thumbnail": "https://github.com/master-1970/resources/raw/master/images/squares/estrenosgo.png", "thumbnail": "https://github.com/master-1970/resources/raw/master/images/squares/estrenosgo.png",
"banner": "estrenosgo.png", "banner": "estrenosgo.png",
@@ -24,6 +24,7 @@
], ],
"categories": [ "categories": [
"movie", "movie",
"tvshow" "tvshow",
"torrent"
] ]
} }
@@ -3,7 +3,7 @@
"name": "Filesmonster Catalogue", "name": "Filesmonster Catalogue",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "filesmonster_catalogue.png", "thumbnail": "filesmonster_catalogue.png",
"banner": "filesmonster_catalogue.png", "banner": "filesmonster_catalogue.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "freecambay", "id": "freecambay",
"name": "FreeCamBay", "name": "FreeCamBay",
"language": "es", "language": ["*"],
"active": true, "active": true,
"adult": true, "adult": true,
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "gmobi", "name": "gmobi",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"version": 1, "version": 1,
"thumbnail": "http://gnula.mobi/wp-content/uploads/2016/08/Untitled-6.png", "thumbnail": "http://gnula.mobi/wp-content/uploads/2016/08/Untitled-6.png",
"banner": "", "banner": "",
+7 -7
View File
@@ -1,7 +1,7 @@
# -*- coding: iso-8859-1 -*- # -*- coding: utf-8 -*-
#------------------------------------------------------------ # ------------------------------------------------------------
# Alfa # Alfa
#------------------------------------------------------------ # ------------------------------------------------------------
import urlparse,urllib2,urllib,re import urlparse,urllib2,urllib,re
import os, sys import os, sys
@@ -18,11 +18,11 @@ from platformcode import config, logger
def mainlist(item): def mainlist(item):
logger.info() logger.info()
itemlist = [] itemlist = []
itemlist.append(item.clone(title="Novedades" , action="peliculas", url="http://gnula.mobi/")) itemlist.append(item.clone(title="Novedades", action="peliculas", url="http://gnula.mobi/"))
itemlist.append(item.clone(title="Castellano" , action="peliculas", itemlist.append(item.clone(title="Castellano", action="peliculas",
url="http://www.gnula.mobi/tag/esp)anol/")) url="http://www.gnula.mobi/tag/esp)anol/"))
itemlist.append(item.clone(title="Latino" , action="peliculas", url="http://gnula.mobi/tag/latino/")) itemlist.append(item.clone(title="Latino", action="peliculas", url="http://gnula.mobi/tag/latino/"))
itemlist.append(item.clone(title="VOSE" , action="peliculas", url="http://gnula.mobi/tag/subtitulada/")) itemlist.append(item.clone(title="VOSE", action="peliculas", url="http://gnula.mobi/tag/subtitulada/"))
itemlist.append(item.clone(title="Buscar", action="search")) itemlist.append(item.clone(title="Buscar", action="search"))
return itemlist return itemlist
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "Gnula", "name": "Gnula",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "gnula.png", "thumbnail": "gnula.png",
"banner": "gnula.png", "banner": "gnula.png",
"version": 1, "version": 1,
@@ -18,7 +18,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
] ]
} }
+58 -43
View File
@@ -1,24 +1,24 @@
# -*- coding: utf-8 -*- # -*- coding: utf-8 -*-
import re import re
import urlparse
from core import httptools
from core import scrapertools from core import scrapertools
from core import servertools from core import servertools
from core.item import Item from core.item import Item
from platformcode import logger from platformcode import logger
host = "http://gnula.nu/"
def mainlist(item): def mainlist(item):
logger.info() logger.info()
itemlist = [] itemlist = []
itemlist.append(Item(channel=item.channel, title="Estrenos", action="peliculas", itemlist.append(Item(channel=item.channel, title="Estrenos", action="peliculas",
url="http://gnula.nu/peliculas-online/lista-de-peliculas-online-parte-1/", viewmode="movie")) url= host +"peliculas-online/lista-de-peliculas-online-parte-1/", viewmode="movie"))
itemlist.append( itemlist.append(
Item(channel=item.channel, title="Generos", action="generos", url="http://gnula.nu/generos/lista-de-generos/")) Item(channel=item.channel, title="Generos", action="generos", url= host + "generos/lista-de-generos/"))
itemlist.append(Item(channel=item.channel, title="Recomendadas", action="peliculas", itemlist.append(Item(channel=item.channel, title="Recomendadas", action="peliculas",
url="http://gnula.nu/peliculas-online/lista-de-peliculas-recomendadas/", viewmode="movie")) url= host + "peliculas-online/lista-de-peliculas-recomendadas/", viewmode="movie"))
# itemlist.append( Item(channel=item.channel, title="Portada" , action="portada" , url="http://gnula.nu/"))
return itemlist return itemlist
@@ -26,23 +26,23 @@ def generos(item):
logger.info() logger.info()
itemlist = [] itemlist = []
data = scrapertools.cache_page(item.url) data = httptools.downloadpage(item.url).data
# <span style="font-weight: bold;">Lista de géneros</span><br/>
data = scrapertools.find_single_match(data, '<spa[^>]+>Lista de g(.*?)/table') data = scrapertools.find_single_match(data, '<spa[^>]+>Lista de g(.*?)/table')
# <strong>Historia antigua</strong> [<a href="http://gnula.nu/generos/lista-de-peliculas-del-genero-historia-antigua/"
patron = '<strong>([^<]+)</strong> .<a href="([^"]+)"' patron = '<strong>([^<]+)</strong> .<a href="([^"]+)"'
matches = re.compile(patron, re.DOTALL).findall(data) matches = re.compile(patron, re.DOTALL).findall(data)
for genero, scrapedurl in matches: for genero, scrapedurl in matches:
title = scrapertools.htmlclean(genero) title = scrapertools.htmlclean(genero)
plot = "" plot = ""
url = urlparse.urljoin(item.url, scrapedurl) url = item.url + scrapedurl
thumbnail = "" thumbnail = ""
logger.debug("title=[" + title + "], url=[" + url + "], thumbnail=[" + thumbnail + "]") itemlist.append(Item(channel = item.channel,
itemlist.append( action = 'peliculas',
Item(channel=item.channel, action='peliculas', title=title, url=url, thumbnail=thumbnail, plot=plot, title = title,
extra=title, viewmode="movie")) url = url,
thumbnail = thumbnail,
plot = plot,
viewmode = "movie"))
itemlist = sorted(itemlist, key=lambda item: item.title) itemlist = sorted(itemlist, key=lambda item: item.title)
@@ -52,17 +52,9 @@ def generos(item):
def peliculas(item): def peliculas(item):
logger.info() logger.info()
'''
<a class="Ntooltip" href="http://gnula.nu/comedia-romantica/ver-with-this-ring-2015-online/">With This Ring<span><br/>
<img src="http://gnula.nu/wp-content/uploads/2015/06/With_This_Ring2.gif"></span></a> [<span style="color: #33ccff;">18/07/15</span> <span style="color: #33ff33;">(VS)</span><span style="color: red;">(VC)</span><span style="color: #cc66cc;">(VL)</span>] [<span style="color: #ffcc99;">HD-R</span>]&#8212;&#8211;<strong>Comedia, Romántica</strong><br/>
'''
'''
<a class="Ntooltip" href="http://gnula.nu/aventuras/ver-las-aventuras-de-tintin-el-secreto-del-unicornio-2011-online/">The Adventures of Tintin<span><br />
<img src="http://gnula.nu/wp-content/uploads/2015/07/The_Adventures_of_Tintin_Secret_of_the_Unicorn2.gif"></span></a> (2011) [<span style="color: #33ccff;">10/07/15</span> <span style="color: #33ff33;">(VS)</span><span style="color: red;">(VC)</span><span style="color: #cc66cc;">(VL)</span>] [<span style="color: #ffcc99;">DVD-R</span>]&#8212;&#8211;<strong>Animación, Infantil, Aventuras</strong><br />
'''
# Descarga la página # Descarga la página
data = scrapertools.cachePage(item.url) data = httptools.downloadpage(item.url).data
patron = '<a class="Ntooltip" href="([^"]+)">([^<]+)<span><br[^<]+' patron = '<a class="Ntooltip" href="([^"]+)">([^<]+)<span><br[^<]+'
patron += '<img src="([^"]+)"></span></a>(.*?)<br' patron += '<img src="([^"]+)"></span></a>(.*?)<br'
matches = re.compile(patron, re.DOTALL).findall(data) matches = re.compile(patron, re.DOTALL).findall(data)
@@ -70,34 +62,57 @@ def peliculas(item):
for scrapedurl, scrapedtitle, scrapedthumbnail, resto in matches: for scrapedurl, scrapedtitle, scrapedthumbnail, resto in matches:
plot = scrapertools.htmlclean(resto).strip() plot = scrapertools.htmlclean(resto).strip()
title = scrapedtitle + " " + plot title = scrapedtitle + " " + plot
fulltitle = title
contentTitle = scrapedtitle contentTitle = scrapedtitle
url = urlparse.urljoin(item.url, scrapedurl) url = item.url + scrapedurl
thumbnail = urlparse.urljoin(item.url, scrapedthumbnail) itemlist.append(Item(channel = item.channel,
logger.debug("title=[" + title + "], url=[" + url + "], thumbnail=[" + thumbnail + "]") action = 'findvideos',
itemlist.append(Item(channel=item.channel, action='findvideos', title=title, fulltitle=fulltitle, url=url, title = title,
thumbnail=thumbnail, plot=plot, extra=title, hasContentDetails=True, url = url,
contentTitle=contentTitle, contentThumbnail=thumbnail, thumbnail = scrapedthumbnail,
contentType="movie", context=["buscar_trailer"])) plot = plot,
hasContentDetails = True,
contentTitle = contentTitle,
contentType = "movie",
context = ["buscar_trailer"]
))
return itemlist return itemlist
def findvideos(item): def findvideos(item):
logger.info("item=" + item.tostring()) logger.info("item=" + item.tostring())
itemlist = []
# Descarga la página para obtener el argumento # Descarga la página para obtener el argumento
data = scrapertools.cachePage(item.url) data = httptools.downloadpage(item.url).data
item.plot = scrapertools.find_single_match(data, '<div class="entry">(.*?)<div class="iframes">') item.plot = scrapertools.find_single_match(data, '<div class="entry">(.*?)<div class="iframes">')
item.plot = scrapertools.htmlclean(item.plot).strip() item.plot = scrapertools.htmlclean(item.plot).strip()
item.contentPlot = item.plot item.contentPlot = item.plot
patron = 'Ver película online.*?>.*?>([^<]+)'
scrapedopcion = scrapertools.find_single_match(data, patron)
titulo_opcional = scrapertools.find_single_match(scrapedopcion, ".*?, (.*)").upper()
bloque = scrapertools.find_multiple_matches(data, 'contenedor_tab.*?/table')
cuenta = 0
for datos in bloque:
cuenta = cuenta + 1
patron = '<em>(opción %s.*?)</em>' %cuenta
scrapedopcion = scrapertools.find_single_match(data, patron)
titulo_opcion = "(" + scrapertools.find_single_match(scrapedopcion, "op.*?, (.*)").upper() + ")"
if "TRAILER" in titulo_opcion or titulo_opcion == "()":
titulo_opcion = "(" + titulo_opcional + ")"
urls = scrapertools.find_multiple_matches(datos, '(?:src|href)="([^"]+)')
titulo = "Ver en %s " + titulo_opcion
for url in urls:
itemlist.append(Item(channel = item.channel,
action = "play",
contentThumbnail = item.thumbnail,
fulltitle = item.contentTitle,
title = titulo,
url = url
))
itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server.capitalize())
return itemlist
newthumbnail = scrapertools.find_single_match(data,
'<div class="entry"[^<]+<p align="center"><img alt="[^"]+" src="([^"]+)"')
if newthumbnail != "":
item.thumbnail = newthumbnail
item.contentThumbnail = newthumbnail
logger.info("plot=" + item.plot) def play(item):
item.thumbnail = item.contentThumbnail
return servertools.find_video_items(item=item, data=data) return [item]
@@ -3,7 +3,7 @@
"name": "La Guarida valencianista", "name": "La Guarida valencianista",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "guaridavalencianista.png", "thumbnail": "guaridavalencianista.png",
"banner": "guaridavalencianista.png", "banner": "guaridavalencianista.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "HDFull", "name": "HDFull",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "hdfull.png", "thumbnail": "hdfull.png",
"banner": "hdfull.png", "banner": "hdfull.png",
"version": 1, "version": 1,
+3 -2
View File
@@ -427,7 +427,7 @@ def episodios(item):
for episode in episodes: for episode in episodes:
thumbnail = host + "/thumbs/" + episode['thumbnail'] thumbnail = host + "/thumbs/" + episode['thumbnail']
language = episode['languages']
temporada = episode['season'] temporada = episode['season']
episodio = episode['episode'] episodio = episode['episode']
if len(episodio) == 1: episodio = '0' + episodio if len(episodio) == 1: episodio = '0' + episodio
@@ -468,7 +468,8 @@ def episodios(item):
'id'] + ";3" 'id'] + ";3"
itemlist.append(Item(channel=item.channel, action="findvideos", title=title, fulltitle=title, url=url, itemlist.append(Item(channel=item.channel, action="findvideos", title=title, fulltitle=title, url=url,
thumbnail=thumbnail, show=item.show, folder=True, contentType="episode")) thumbnail=thumbnail, show=item.show, folder=True, contentType="episode",
language=language))
if config.get_videolibrary_support() and len(itemlist) > 0: if config.get_videolibrary_support() and len(itemlist) > 0:
itemlist.append(Item(channel=item.channel, title="Añadir esta serie a la videoteca", url=url_targets, itemlist.append(Item(channel=item.channel, title="Añadir esta serie a la videoteca", url=url_targets,
@@ -3,7 +3,7 @@
"name": "HentaiEnEspañol", "name": "HentaiEnEspañol",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "https://s11.postimg.org/cmuwcvvpf/hentaienespanol.png", "thumbnail": "https://s11.postimg.org/cmuwcvvpf/hentaienespanol.png",
"banner": "https://s3.postimg.org/j3qkfut8z/hentaienespanol_banner.png", "banner": "https://s3.postimg.org/j3qkfut8z/hentaienespanol_banner.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Hentai ID", "name": "Hentai ID",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "https://dl.dropboxusercontent.com/u/30248079/hentai_id.png", "thumbnail": "https://dl.dropboxusercontent.com/u/30248079/hentai_id.png",
"banner": "https://dl.dropboxusercontent.com/u/30248079/hentai_id2.png", "banner": "https://dl.dropboxusercontent.com/u/30248079/hentai_id2.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "Idocumentales", "name": "Idocumentales",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "https://s27.postimg.org/pjq3y552b/idocumentales.png", "thumbnail": "https://s27.postimg.org/pjq3y552b/idocumentales.png",
"banner": "https://s16.postimg.org/6d8bh1z1x/idocumentales_banner.png", "banner": "https://s16.postimg.org/6d8bh1z1x/idocumentales_banner.png",
"version": 1, "version": 1,
+2 -3
View File
@@ -3,7 +3,7 @@
"name": "Inkapelis", "name": "Inkapelis",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"changes": [ "changes": [
{ {
"date": "12/03/2017", "date": "12/03/2017",
@@ -23,8 +23,7 @@
"banner": "inkapelis.png", "banner": "inkapelis.png",
"categories": [ "categories": [
"movie", "movie",
"vos", "vos"
"latino"
], ],
"settings": [ "settings": [
{ {
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "javtasty", "id": "javtasty",
"name": "JavTasty", "name": "JavTasty",
"language": "es", "language": ["*"],
"active": true, "active": true,
"adult": true, "adult": true,
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "javus.net", "name": "javus.net",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "https://s15.postimg.org/pzd3h4vy3/javus.png", "thumbnail": "https://s15.postimg.org/pzd3h4vy3/javus.png",
"banner": "https://s21.postimg.org/5pqzedp2f/javus_banner.png", "banner": "https://s21.postimg.org/5pqzedp2f/javus_banner.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "JKanime", "name": "JKanime",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "jkanime.png", "thumbnail": "jkanime.png",
"banner": "jkanime.png", "banner": "jkanime.png",
"version": 1, "version": 1,
+1 -2
View File
@@ -1,7 +1,7 @@
{ {
"id": "lacajita", "id": "lacajita",
"name": "LaCajita", "name": "LaCajita",
"language": "es", "language": ["cast", "lat"],
"active": true, "active": true,
"adult": false, "adult": false,
"version": 1, "version": 1,
@@ -14,7 +14,6 @@
"thumbnail": "http://i.imgur.com/LVdupxc.png", "thumbnail": "http://i.imgur.com/LVdupxc.png",
"categories": [ "categories": [
"movie", "movie",
"latino",
"vos" "vos"
], ],
"settings": [ "settings": [
+1 -5
View File
@@ -1,12 +1,9 @@
{ {
"id": "locopelis", "id": "locopelis",
"name": "LOCOPELIS", "name": "LOCOPELIS",
"compatible": {
"addon_version": "4.3"
},
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "https://s31.postimg.org/5worjw2nv/locopelis.png", "thumbnail": "https://s31.postimg.org/5worjw2nv/locopelis.png",
"banner": "https://s31.postimg.org/ng87bb9jv/locopelis_banner.png", "banner": "https://s31.postimg.org/ng87bb9jv/locopelis_banner.png",
"version": 1, "version": 1,
@@ -33,7 +30,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Maxipelis", "name": "Maxipelis",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"version": 1, "version": 1,
"thumbnail": "http://www.maxipelis.net/wp-content/uploads/2016/12/applogo.png", "thumbnail": "http://www.maxipelis.net/wp-content/uploads/2016/12/applogo.png",
"banner": "", "banner": "",
+4 -5
View File
@@ -1,7 +1,7 @@
# -*- coding: iso-8859-1 -*- # -*- coding: utf-8 -*-
#------------------------------------------------------------ # ------------------------------------------------------------
# Alfa # Alfa
#------------------------------------------------------------ # ------------------------------------------------------------
import urlparse,urllib2,urllib,re import urlparse,urllib2,urllib,re
import os, sys import os, sys
@@ -13,10 +13,9 @@ from platformcode import config, logger
from core import httptools from core import httptools
from core import tmdb from core import tmdb
host = 'http://www.maxipelis.net' host = 'http://www.maxipelis.net'
def mainlist(item): def mainlist(item):
logger.info() logger.info()
itemlist = [] itemlist = []
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Mejor Torrent", "name": "Mejor Torrent",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "mejortorrent.png", "thumbnail": "mejortorrent.png",
"banner": "mejortorrent.png", "banner": "mejortorrent.png",
"version": 1, "version": 1,
+1 -5
View File
@@ -1,12 +1,9 @@
{ {
"id": "metaserie", "id": "metaserie",
"name": "MetaSerie (Latino)", "name": "MetaSerie (Latino)",
"compatible": {
"addon_version": "4.3"
},
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s32.postimg.org/7g50yo39h/metaserie.png", "thumbnail": "https://s32.postimg.org/7g50yo39h/metaserie.png",
"banner": "https://s31.postimg.org/u6yddil8r/metaserie_banner.png", "banner": "https://s31.postimg.org/u6yddil8r/metaserie_banner.png",
"version": 1, "version": 1,
@@ -33,7 +30,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"tvshow" "tvshow"
], ],
"settings": [ "settings": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Miltorrents", "name": "Miltorrents",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"version": 1, "version": 1,
"changes": [ "changes": [
{ {
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "MiraDeTodo", "name": "MiraDeTodo",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s17.postimg.org/e8kp12mcv/miradetodo.png", "thumbnail": "https://s17.postimg.org/e8kp12mcv/miradetodo.png",
"banner": "https://s7.postimg.org/it21t0dej/miradetodo-banner.png", "banner": "https://s7.postimg.org/it21t0dej/miradetodo-banner.png",
"version": 1, "version": 1,
@@ -18,7 +18,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
+1 -5
View File
@@ -1,12 +1,9 @@
{ {
"id": "mundoflv", "id": "mundoflv",
"name": "MundoFlv", "name": "MundoFlv",
"compatible": {
"addon_version": "4.3"
},
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s32.postimg.org/h1ewz9hhx/mundoflv.png", "thumbnail": "https://s32.postimg.org/h1ewz9hhx/mundoflv.png",
"banner": "mundoflv.png", "banner": "mundoflv.png",
"version": 1, "version": 1,
@@ -37,7 +34,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"tvshow" "tvshow"
], ],
"settings": [ "settings": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Newpct", "name": "Newpct",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "newpct.png", "thumbnail": "newpct.png",
"banner": "newpct.png", "banner": "newpct.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Newpct1", "name": "Newpct1",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "newpct1.png", "thumbnail": "newpct1.png",
"banner": "newpct1.png", "banner": "newpct1.png",
"version": 1, "version": 1,
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Novedades", "name": "Novedades",
"active": false, "active": false,
"adult": false, "adult": false,
"language": "es", "language": ["*"],
"version": 1, "version": 1,
"changes": [ "changes": [
{ {
+6 -10
View File
@@ -93,10 +93,7 @@ def get_channels_list():
# Rellenar listas de canales disponibles # Rellenar listas de canales disponibles
channels_path = os.path.join(config.get_runtime_path(), "channels", '*.json') channels_path = os.path.join(config.get_runtime_path(), "channels", '*.json')
channel_language = config.get_setting("channel_language") channel_language = config.get_setting("channel_language", default="all")
if channel_language == "":
channel_language = "all"
for infile in sorted(glob.glob(channels_path)): for infile in sorted(glob.glob(channels_path)):
channel_id = os.path.basename(infile)[:-5] channel_id = os.path.basename(infile)[:-5]
@@ -111,7 +108,8 @@ def get_channels_list():
continue continue
# No incluir si el canal es en un idioma filtrado # No incluir si el canal es en un idioma filtrado
if channel_language != "all" and channel_parameters["language"] != channel_language: if channel_language != "all" and channel_language not in channel_parameters["language"] \
and "*" not in channel_parameters["language"]:
continue continue
# Incluir en cada categoria, si en su configuracion el canal esta activado para mostrar novedades # Incluir en cada categoria, si en su configuracion el canal esta activado para mostrar novedades
@@ -424,10 +422,7 @@ def settings(item):
def setting_channel(item): def setting_channel(item):
channels_path = os.path.join(config.get_runtime_path(), "channels", '*.json') channels_path = os.path.join(config.get_runtime_path(), "channels", '*.json')
channel_language = config.get_setting("channel_language") channel_language = config.get_setting("channel_language", default="all")
if channel_language == "":
channel_language = "all"
list_controls = [] list_controls = []
for infile in sorted(glob.glob(channels_path)): for infile in sorted(glob.glob(channels_path)):
@@ -443,7 +438,8 @@ def setting_channel(item):
continue continue
# No incluir si el canal es en un idioma filtrado # No incluir si el canal es en un idioma filtrado
if channel_language != "all" and channel_parameters["language"] != channel_language: if channel_language != "all" and channel_language not in channel_parameters["language"] \
and "*" not in channel_parameters["language"]:
continue continue
# No incluir si en su configuracion el canal no existe 'include_in_newest' # No incluir si en su configuracion el canal no existe 'include_in_newest'
+1 -1
View File
@@ -1,7 +1,7 @@
{ {
"id": "nuvid", "id": "nuvid",
"name": "Nuvid", "name": "Nuvid",
"language": "es", "language": ["*"],
"active": true, "active": true,
"adult": true, "adult": true,
"version": 1, "version": 1,
+1 -5
View File
@@ -1,17 +1,13 @@
{ {
"id": "ohpelis", "id": "ohpelis",
"name": "OH-PELIS", "name": "OH-PELIS",
"compatible": {
"addon_version": "4.3"
},
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "https://s28.postimg.org/6v7ig831p/oh-pelis.png", "thumbnail": "https://s28.postimg.org/6v7ig831p/oh-pelis.png",
"banner": "https://s27.postimg.org/bz0fh8jpf/oh-pelis-banner.png", "banner": "https://s27.postimg.org/bz0fh8jpf/oh-pelis-banner.png",
"version": 1, "version": 1,
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
@@ -3,7 +3,7 @@
"name": "PasateaTorrent", "name": "PasateaTorrent",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://imgur.com/iLeISt0.png", "thumbnail": "http://imgur.com/iLeISt0.png",
"banner": "pasateatorrent.png", "banner": "pasateatorrent.png",
"version": 1, "version": 1,
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "PedroPolis", "name": "PedroPolis",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"fanart": "https://scontent-lht6-1.xx.fbcdn.net/v/t31.0-8/21056316_670362456502498_8317422545691005578_o.png?oh=1f13a23a931d82e944a7ec743a19f583&oe=5A599F4D", "fanart": "https://scontent-lht6-1.xx.fbcdn.net/v/t31.0-8/21056316_670362456502498_8317422545691005578_o.png?oh=1f13a23a931d82e944a7ec743a19f583&oe=5A599F4D",
"thumbnail": "https://scontent-lht6-1.xx.fbcdn.net/v/t1.0-9/20292600_467501756957771_6794721577753226614_n.jpg?oh=bba1479eccf0adceeb8c0d3450cc2531&oe=5A4EE0F5", "thumbnail": "https://scontent-lht6-1.xx.fbcdn.net/v/t1.0-9/20292600_467501756957771_6794721577753226614_n.jpg?oh=bba1479eccf0adceeb8c0d3450cc2531&oe=5A4EE0F5",
"banner": "", "banner": "",
@@ -15,7 +15,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie", "movie",
"tvshow", "tvshow",
"vos" "vos"
@@ -3,7 +3,7 @@
"name": "Peliculasaudiolatino", "name": "Peliculasaudiolatino",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "peliculasaudiolatino.png", "thumbnail": "peliculasaudiolatino.png",
"banner": "peliculasaudiolatino.png", "banner": "peliculasaudiolatino.png",
"version": 1, "version": 1,
@@ -22,7 +22,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "PeliculasDK", "name": "PeliculasDK",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://s29.postimg.org/wzw749oon/pldklog.jpg", "thumbnail": "http://s29.postimg.org/wzw749oon/pldklog.jpg",
"banner": "peliculasdk.png", "banner": "peliculasdk.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "PeliculasEroticas", "name": "PeliculasEroticas",
"active": true, "active": true,
"adult": true, "adult": true,
"language": "es", "language": ["*"],
"thumbnail": "peliculaseroticas.png", "thumbnail": "peliculaseroticas.png",
"banner": "peliculaseroticas.png", "banner": "peliculaseroticas.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "PeliculasGratis", "name": "PeliculasGratis",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "http://imgur.com/ThH8Zmk.png", "thumbnail": "http://imgur.com/ThH8Zmk.png",
"banner": "peliculasgratis.png", "banner": "peliculasgratis.png",
"version": 1, "version": 1,
@@ -3,7 +3,7 @@
"name": "PeliculasHindu", "name": "PeliculasHindu",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "peliculashindu.png", "thumbnail": "peliculashindu.png",
"banner": "peliculashindu.png", "banner": "peliculashindu.png",
"version": 1, "version": 1,
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "PeliculasMX", "name": "PeliculasMX",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["lat"],
"thumbnail": "peliculasmx.png", "thumbnail": "peliculasmx.png",
"banner": "peliculasmx.png", "banner": "peliculasmx.png",
"version": 1, "version": 1,
@@ -18,7 +18,6 @@
} }
], ],
"categories": [ "categories": [
"latino",
"movie" "movie"
], ],
"settings": [ "settings": [
+2 -3
View File
@@ -1,7 +1,7 @@
{ {
"id": "peliculasnu", "id": "peliculasnu",
"name": "Peliculas.Nu", "name": "Peliculas.Nu",
"language": "es", "language": ["cast", "lat"],
"active": true, "active": true,
"adult": false, "adult": false,
"version": 1, "version": 1,
@@ -27,8 +27,7 @@
"banner": "peliculasnu.png", "banner": "peliculasnu.png",
"categories": [ "categories": [
"movie", "movie",
"vos", "vos"
"latino"
], ],
"settings": [ "settings": [
{ {
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "peliculasrey", "name": "peliculasrey",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "peliculasrey.png", "thumbnail": "peliculasrey.png",
"banner": "peliculasrey.png", "banner": "peliculasrey.png",
"version": 1, "version": 1,
-52
View File
@@ -1,52 +0,0 @@
{
"id": "pelis24",
"name": "Pelis24",
"active": false,
"adult": false,
"language": "es",
"thumbnail": "pelis24.png",
"banner": "pelis24.png",
"version": 1,
"changes": [
{
"date": "27/04/17",
"description": "Adaptación por cambio de dominio y estructura"
},
{
"date": "01/07/2016",
"description": "Eliminado código innecesario"
}
],
"categories": [
"latino",
"movie",
"vos",
"direct"
],
"settings": [
{
"id": "include_in_global_search",
"type": "bool",
"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,
"enabled": true,
"visible": true
},
{
"id": "include_in_newest_infantiles",
"type": "bool",
"label": "Incluir en Novedades - Infantiles",
"default": true,
"enabled": true,
"visible": true
}
]
}
-215
View File
@@ -1,215 +0,0 @@
# -*- coding: utf-8 -*-
import re
import sys
from core import httptools
from core import scrapertools
from core import servertools
from core.item import Item
from platformcode import logger
from core import tmdb
thumbnail_host = 'https://github.com/master-1970/resources/raw/master/images/squares/pelis24.PNG'
def mainlist(item):
logger.info()
itemlist = []
item.thumbnail = thumbnail_host
item.action = "peliculas"
itemlist.append(item.clone(title="Novedades", url="http://www.pelis24.tv/ultimas-peliculas/"))
itemlist.append(item.clone(title="Estrenos", url="http://pelis24.tv/estrenos/"))
itemlist.append(item.clone(title="Calidad HD", url="https://pelis24.tv/xfsearch/calidad/HD"))
itemlist.append(item.clone(title="Calidad HQ", url="https://pelis24.tv/xfsearch/calidad/HQ"))
itemlist.append(item.clone(title="Calidad SD", url="https://pelis24.tv/xfsearch/calidad/SD"))
itemlist.append(item.clone(title="Castellano", url="http://pelis24.tv/pelicula-ca/"))
itemlist.append(item.clone(title="Latino", url="https://pelis24.tv/pelicula-la/"))
itemlist.append(item.clone(title="Versión original", url="http://pelis24.tv/peliculasvo/"))
itemlist.append(item.clone(title="Versión original subtitulada", url="http://pelis24.tv/peliculas-su/"))
itemlist.append(item.clone(title="Filtrar por género", action="genero", url="http://pelis24.tv"))
itemlist.append(item.clone(title="Buscar", action="search", url="http://www.pelis24.tv/"))
return itemlist
def newest(categoria):
logger.info()
item = Item()
try:
if categoria == 'peliculas':
item.url = "http://www.pelis24.tv/ultimas-peliculas/"
elif categoria == 'infantiles':
item.url = "http://pelis24.tv/tags/Infantil/"
else:
return []
itemlist = peliculas(item)
if itemlist[-1].title == ">> Página siguiente":
itemlist.pop()
# Se captura la excepción, para no interrumpir al canal novedades si un canal falla
except:
for line in sys.exc_info():
logger.error("%s" % line)
return []
return itemlist
def search(item, texto):
logger.info()
try:
item.extra = texto
return buscar(item)
# Se captura la excepci?n, para no interrumpir al buscador global si un canal falla
except:
for line in sys.exc_info():
logger.error("%s" % line)
return []
def buscar(item):
itemlist = []
if not item.page:
item.page = 1
url = "http://pelis24.tv/index.php?do=search&subaction=search&search_start=%s&story=%s" % (
item.page, item.extra.replace(" ", "+"))
data = httptools.downloadpage(url).data
data = re.sub(r"\n|\r|\t|\s{2}|&nbsp;", "", data)
patron = '<a class="sres-wrap clearfix" href="([^"]+).*?'
patron += '<img src="([^"]+)" alt="([^"]+)"'
matches = re.compile(patron, re.DOTALL).findall(data)
for url, thumbnail, title in matches:
if "/series/" in url:
# Descartamos las series
continue
if not thumbnail.startswith("http"):
thumbnail = "http://www.pelis24.tv" + thumbnail
contentTitle = title.split("/")[0]
itemlist.append(
Item(channel=item.channel, action="findvideos", title=contentTitle, url=url, thumbnail=thumbnail,
contentTitle=contentTitle))
if itemlist:
itemlist.append(item.clone(title=">> Página siguiente", action="buscar", thumbnail=thumbnail_host,
page=item.page + 1))
return itemlist
def genero(item):
logger.info()
itemlist = []
data = httptools.downloadpage(item.url).data
data = re.sub(r"\n|\r|\t|\s{2}|&nbsp;", "", data)
patron = '<li><a href="\/xfsearch\/genero\/([^"]+)"(?: title=".*?").*?(.*?)<\/a><\/li>'
matches = re.compile(patron, re.DOTALL).findall(data)
for scrapedurl, scrapedtitle in matches:
url = '%s/xfsearch/genero/%s' % (item.url, scrapedurl)
itemlist.append(Item(channel=item.channel, action="peliculas", title=scrapedurl,
thumbnail=thumbnail_host, url=url))
return itemlist
def peliculas(item):
logger.info()
itemlist = []
data = httptools.downloadpage(item.url).data
data = re.sub(r"\n|\r|\t|\s{2}|&nbsp;", "", data)
data = scrapertools.find_single_match(data, "dle-content(.*?)not-main clearfix")
patron = '<div class="movie-img img-box">.*?'
patron += '<img src="([^"]+).*?'
patron += 'href="([^"]+).*?'
patron += '<div class="movie-series">(.*?)<\/.*?'
patron += '<a href=[^>]+>([^<]+)</a>'
matches = re.compile(patron, re.DOTALL).findall(data)
for thumbnail, url, title, quality in matches:
if "/series/" in url:
# Descartamos las series
continue
if not thumbnail.startswith("http"):
thumbnail = "http://www.pelis24.tv" + thumbnail
contentTitle = title.split("/")[0]
year = scrapertools.find_single_match(contentTitle, '\((\d{4})\)')
contentTitle= contentTitle.replace (' (%s)'%year, '')
title = "%s (%s)" % (contentTitle, quality)
itemlist.append(
Item(channel=item.channel, action="findvideos", title=title, url=url, thumbnail=thumbnail,
quality=quality, contentTitle=contentTitle, infoLabels = {'year':year}))
if item.title != 'Versión original':
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
# Extrae el paginador
next_page = scrapertools.find_single_match(data, '<span class="pnext".*?<a href="([^"]+)')
if next_page:
itemlist.append(Item(channel=item.channel, action="peliculas", title=">> Página siguiente",
thumbnail=thumbnail_host, url=next_page))
return itemlist
def findvideos(item):
itemlist=[]
duplicated =[]
data = httptools.downloadpage(item.url).data
patron = '<div class="player-box" id="tabs-(\d+)"><iframe data-src="(.*?)".*?allowfullscreen'
matches = re.compile(patron, re.DOTALL).findall(data)
for id, scrapedurl in matches:
lang = scrapertools.find_single_match(data, '<li><a href="#tabs-%s"><img src=".*?" alt="(.*?)".*?\/>'%id)
server = servertools.get_server_from_url(scrapedurl)
title = '%s (%s) (%s)' % (item.title, server, lang)
thumbnail = ''
if 'enlac' in scrapedurl:
if 'google' in scrapedurl:
server = 'gvideo'
elif 'openload' in scrapedurl:
server = 'openload'
title = '%s (%s) (%s)'%(item.title, server, lang)
scrapedurl = scrapedurl.replace('embed','stream')
gdata = httptools.downloadpage(scrapedurl).data
url_list = servertools.findvideosbyserver(gdata, server)
for url in url_list:
if url[1] not in duplicated:
thumbnail = servertools.guess_server_thumbnail(server)
itemlist.append(item.clone(title=title, url=url[1], action='play', server=server,
thumbnail = thumbnail))
duplicated.append(url[1])
elif '.html' in scrapedurl:
url_list = servertools.findvideosbyserver(data, server)
for url in url_list:
if url[1] not in duplicated:
thumbnail = servertools.guess_server_thumbnail(server)
itemlist.append(item.clone(title = title, url=url[1], action='play', server=server,
thumbnail = thumbnail))
duplicated.append(url[1])
else:
url = scrapedurl
if url not in duplicated:
thumbnail = servertools.guess_server_thumbnail(server)
itemlist.append(item.clone(title= title, url=url, action='play', server=server, thumbnail =
thumbnail))
duplicated.append(url)
return itemlist
+2 -3
View File
@@ -3,7 +3,7 @@
"name": "Pelisadicto", "name": "Pelisadicto",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "pelisadicto.png", "thumbnail": "pelisadicto.png",
"banner": "pelisadicto.png", "banner": "pelisadicto.png",
"version": 1, "version": 1,
@@ -18,8 +18,7 @@
} }
], ],
"categories": [ "categories": [
"movie", "movie"
"latino"
], ],
"settings": [ "settings": [
{ {
+1 -2
View File
@@ -3,7 +3,7 @@
"name": "Peliscity", "name": "Peliscity",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast", "lat"],
"thumbnail": "peliscity.png", "thumbnail": "peliscity.png",
"banner": "peliscity.png", "banner": "peliscity.png",
"version": 1, "version": 1,
@@ -19,7 +19,6 @@
], ],
"categories": [ "categories": [
"movie", "movie",
"latino",
"direct", "direct",
"VOS" "VOS"
] ]
+1 -1
View File
@@ -3,7 +3,7 @@
"name": "Peliscon", "name": "Peliscon",
"active": true, "active": true,
"adult": false, "adult": false,
"language": "es", "language": ["cast"],
"thumbnail": "http://imgur.com/yTQRPUJ.png", "thumbnail": "http://imgur.com/yTQRPUJ.png",
"version": 1, "version": 1,
"changes": [ "changes": [

Some files were not shown because too many files have changed in this diff Show More