From 33109bee853007ab10277b0af2881ecc9087965f Mon Sep 17 00:00:00 2001
From: Intel1 <25161862+Intel11@users.noreply.github.com>
Date: Mon, 14 May 2018 14:45:40 -0500
Subject: [PATCH] solocastellano: nuevo canal
---
.../channels/solocastellano.json | 65 +++
plugin.video.alfa/channels/solocastellano.py | 429 ++++++++++++++++++
2 files changed, 494 insertions(+)
create mode 100644 plugin.video.alfa/channels/solocastellano.json
create mode 100644 plugin.video.alfa/channels/solocastellano.py
diff --git a/plugin.video.alfa/channels/solocastellano.json b/plugin.video.alfa/channels/solocastellano.json
new file mode 100644
index 00000000..43cd51ac
--- /dev/null
+++ b/plugin.video.alfa/channels/solocastellano.json
@@ -0,0 +1,65 @@
+{
+ "id": "solocastellano",
+ "name": "SoloCastellano",
+ "active": true,
+ "adult": false,
+ "language": ["cast"],
+ "thumbnail": "https://s31.postimg.cc/uotcf3owb/solocastellano.png",
+ "banner": "",
+ "categories": [
+ "movie"
+ ],
+ "settings": [
+ {
+ "id": "include_in_global_search",
+ "type": "bool",
+ "label": "Incluir en busqueda global",
+ "default": false,
+ "enabled": false,
+ "visible": false
+ },
+ {
+ "id": "filter_languages",
+ "type": "list",
+ "label": "Mostrar enlaces en idioma...",
+ "default": 0,
+ "enabled": true,
+ "visible": true,
+ "lvalues": [
+ "No filtrar"
+ ]
+ },
+ {
+ "id": "include_in_newest_castellano",
+ "type": "bool",
+ "label": "Incluir en Novedades - Castellano",
+ "default": true,
+ "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
+ },
+ {
+ "id": "include_in_newest_terror",
+ "type": "bool",
+ "label": "Incluir en Novedades - Terror",
+ "default": true,
+ "enabled": true,
+ "visible": true
+ }
+ ]
+}
diff --git a/plugin.video.alfa/channels/solocastellano.py b/plugin.video.alfa/channels/solocastellano.py
new file mode 100644
index 00000000..71b71613
--- /dev/null
+++ b/plugin.video.alfa/channels/solocastellano.py
@@ -0,0 +1,429 @@
+# -*- coding: utf-8 -*-
+
+import re
+
+from channels import autoplay
+from channels import filtertools
+from core import httptools
+from core import scrapertools
+from core import servertools
+from core import tmdb
+from core.item import Item
+from platformcode import config, logger
+from channelselector import get_thumb
+
+host = 'http://solocastellano.com/'
+headers = [['User-Agent', 'Mozilla/5.0 (Windows NT 10.0; WOW64; rv:45.0) Gecko/20100101 Firefox/45.0'],
+ ['Referer', host]]
+
+IDIOMAS = {'Castellano': 'Castellano'}
+list_language = IDIOMAS.values()
+list_quality = []
+list_servers = ['yourupload', 'openload', 'sendvid']
+
+vars = {
+ 'ef5ca18f089cf01316bbc967fa10f72950790c39ef5ca18f089cf01316bbc967fa10f72950790c39': 'http://tawnestdplsnetps.pw/',
+ 'b48699bb49d4550f27879deeb948d4f7d9c5949a8': 'embed',
+ 'JzewJkLlrvcFnLelj2ikbA': 'php?url=',
+ 'p889c6853a117aca83ef9d6523335dc065213ae86': 'player',
+ 'e20fb341325556c0fc0145ce10d08a970538987': 'http://yourupload.com/embed/'
+}
+
+tgenero = {"acción": "https://s3.postimg.cc/y6o9puflv/accion.png",
+ "animación": "https://s13.postimg.cc/5on877l87/animacion.png",
+ "aventura": "https://s10.postimg.cc/6su40czih/aventura.png",
+ "belico": "https://s23.postimg.cc/71itp9hcr/belica.png",
+ "ciencia ficción": "https://s9.postimg.cc/diu70s7j3/cienciaficcion.png",
+ "comedia": "https://s7.postimg.cc/ne9g9zgwb/comedia.png",
+ "comedia romántica": "https://s21.postimg.cc/xfsj7ua0n/romantica.png",
+ "cortometrajes": "https://s15.postimg.cc/kluxxwg23/cortometraje.png",
+ "crimen": "https://s4.postimg.cc/6z27zhirx/crimen.png",
+ "cristianas": "https://s7.postimg.cc/llo852fwr/religiosa.png",
+ "deportivas": "https://s13.postimg.cc/xuxf5h06v/deporte.png",
+ "drama": "https://s16.postimg.cc/94sia332d/drama.png",
+ "familiar": "https://s7.postimg.cc/6s7vdhqrf/familiar.png",
+ "fantasía": "https://s13.postimg.cc/65ylohgvb/fantasia.png",
+ "guerra": "https://s4.postimg.cc/n1h2jp2jh/guerra.png",
+ "historia": "https://s15.postimg.cc/fmc050h1n/historia.png",
+ "intriga": "https://s27.postimg.cc/v9og43u2b/intriga.png",
+ "misterios": "https://s1.postimg.cc/w7fdgf2vj/misterio.png",
+ "musical": "https://s29.postimg.cc/bbxmdh9c7/musical.png",
+ "romance": "https://s15.postimg.cc/fb5j8cl63/romance.png",
+ "suspenso": "https://s13.postimg.cc/wmw6vl1cn/suspenso.png",
+ "terror": "https://s7.postimg.cc/yi0gij3gb/terror.png",
+ "thriller": "https://s22.postimg.cc/5y9g0jsu9/thriller.png"}
+
+def mainlist(item):
+ logger.info()
+
+ autoplay.init(item.channel, list_servers, list_quality)
+
+ itemlist = []
+
+ itemlist.append(item.clone(title="Todas",
+ action="lista",
+ thumbnail=get_thumb('all', auto=True),
+ fanart='https://s18.postimg.cc/fwvaeo6qh/todas.png',
+ url=host + 'lista-de-peliculas/',
+ extra='peliculas'
+ ))
+
+ itemlist.append(item.clone(title="Ultimas",
+ action="lista",
+ thumbnail=get_thumb('last', auto=True),
+ fanart='https://s22.postimg.cc/cb7nmhwv5/ultimas.png',
+ url=host,
+ extra='peliculas'
+ ))
+
+ itemlist.append(item.clone(title="Generos",
+ action="generos",
+ thumbnail=get_thumb('genres', auto=True),
+ fanart='https://s3.postimg.cc/5s9jg2wtf/generos.png',
+ url=host,
+ extra='peliculas'
+ ))
+
+ itemlist.append(item.clone(title="Buscar",
+ action="search",
+ url=host + 'search?q=',
+ thumbnail=get_thumb('search', auto=True),
+ fanart='https://s30.postimg.cc/pei7txpa9/buscar.png'))
+
+ autoplay.show_option(item.channel, itemlist)
+
+ return itemlist
+
+
+def lista(item):
+ logger.info()
+
+ itemlist = []
+ data = httptools.downloadpage(item.url).data
+ data = re.sub(r'"|\n|\r|\t| |
|\s{2,}', "", data)
+ contentSerieName = ''
+
+ patron = '
([^<]+)<\/p>') + itemlist.append(Item(channel=item.channel, + action="episodiosxtemp", + title=title, + fulltitle=item.title, + url=url, + thumbnail=thumbnail, + contentSerieName=item.contentSerieName, + contentSeasonNumber=contentSeasonNumber, + plot=plot, + infoLabels=infoLabels + )) + temp = temp + 1 + tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) + if config.get_videolibrary_support() and len(itemlist) > 0: + itemlist.append(Item(channel=item.channel, + title='[COLOR yellow]Añadir esta serie a la videoteca[/COLOR]', + url=item.url, + action="add_serie_to_library", + extra="episodios", + contentSerieName=item.contentSerieName, + extra1=item.extra1, + temp=str(temp) + )) + + return itemlist + + +def episodios(item): + logger.info() + itemlist = [] + data = httptools.downloadpage(item.url).data + temp = 'temporada-' + str(item.contentSeasonNumber) + patron = '
([^<]+)<\/p>') + else: + title = item.contentSerieName + ' (' + server + ') ' + language + plot = item.plot + + thumbnail = servertools.guess_server_thumbnail(title) + + if 'player' not in url and 'php' in url: + itemlist.append(item.clone(title=title, + url=url, + action="play", + plot=plot, + thumbnail=thumbnail, + server=server, + quality='', + language=language + )) + # Requerido para FilterTools + + itemlist = filtertools.get_links(itemlist, item, list_language) + + # Requerido para AutoPlay + + autoplay.start(itemlist, item) + + if config.get_videolibrary_support() and len(itemlist) > 0 and item.extra != 'findvideos': + itemlist.append(Item(channel=item.channel, + title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', + url=item.url, + action="add_pelicula_to_library", + extra="findvideos", + contentTitle=item.contentTitle + )) + + return itemlist + + +def play(item): + logger.info() + itemlist = [] + data = httptools.downloadpage(item.url).data + if 'your' in item.url: + item.url = 'http://www.yourupload.com/embed/' + scrapertools.find_single_match(data, 'src=".*?code=(.*?)"') + itemlist.append(item) + else: + itemlist = servertools.find_video_items(data=data) + + return itemlist + + +def search(item, texto): + logger.info() + texto = texto.replace(" ", "+") + item.url = item.url + texto + if texto != '': + return lista(item) + + +def newest(categoria): + logger.info() + itemlist = [] + item = Item() + # categoria='peliculas' + try: + if categoria in ['peliculas','latino']: + item.url = host + elif categoria == 'infantiles': + item.url = host + 'search?q=animación' + elif categoria == 'terror': + item.url = host + 'search?q=terror' + + item.extra = 'peliculas' + itemlist = lista(item) + if itemlist[-1].title == 'Siguiente >>>': + itemlist.pop() + except: + import sys + for line in sys.exc_info(): + logger.error("{0}".format(line)) + return [] + + return itemlist