diff --git a/channels/bleachportal.json b/channels/bleachportal.json deleted file mode 100644 index 59f84ee4..00000000 --- a/channels/bleachportal.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "id": "bleachportal", - "name": "BleachPortal", - "language": ["sub-ita"], - "active": true, - "deprecated": true, - "adult": false, - "fanart": "https://www.thetvdb.com/banners/fanart/original/74796-29.jpg", - "thumbnail": "bleachportal.png", - "banner": "bleachportal.png", - "categories": ["anime"], - "not_active":["include_in_newests", "include_in_global_search"], - "settings": [] -} - diff --git a/channels/bleachportal.py b/channels/bleachportal.py deleted file mode 100644 index 9377fb9d..00000000 --- a/channels/bleachportal.py +++ /dev/null @@ -1,119 +0,0 @@ -# -*- coding: utf-8 -*- -# Ringraziamo Icarus crew -# ------------------------------------------------------------ -# XBMC Plugin -# Canale per http://bleachportal.it -# ------------------------------------------------------------ - -import re - -from core import scrapertools, httptools -from core.item import Item -from platformcode import logger -from platformcode import config -from core import support - -host = "http://www.bleachportal.it" - - -def mainlist(item): - logger.info("[BleachPortal.py]==> mainlist") - itemlist = [Item(channel=item.channel, - action="episodi", - title= support.typo('Bleach','bold'), - url=host + "/streaming/bleach/stream_bleach.htm", - thumbnail="https://www.thetvdb.com/banners/posters/74796-14.jpg", - banner="https://www.thetvdb.com/banners/graphical/74796-g6.jpg", - fanart="https://www.thetvdb.com/banners/fanart/original/74796-30.jpg", - extra="bleach"), - Item(channel=item.channel, - action="episodi", - title=support.typo('D.Gray Man','bold'), - url=host + "/streaming/d.gray-man/stream_dgray-man.htm", - thumbnail="https://www.thetvdb.com/banners/posters/79635-1.jpg", - banner="https://www.thetvdb.com/banners/graphical/79635-g4.jpg", - fanart="https://www.thetvdb.com/banners/fanart/original/79635-6.jpg", - extra="dgrayman")] - - return itemlist - - -def episodi(item): - logger.info("[BleachPortal.py]==> episodi") - itemlist = [] - - data = httptools.downloadpage(item.url).data - patron = r'?[\D+([\d\-]+)\s?<[^<]+<[^<]+<[^<]+<[^<]+<.*?\s+?.*?([^<]+).*?\s?.*?' - matches = re.compile(patron, re.DOTALL).findall(data) - - animetitle = "Bleach" if item.extra == "bleach" else "D.Gray Man" - for scrapednumber, scrapedtitle, scrapedurl in matches: - scrapedtitle = scrapedtitle.decode('latin1').encode('utf8') - itemlist.append( - Item(channel=item.channel, - action="findvideos", - title=support.typo("%s Episodio %s" % (animetitle, scrapednumber),'bold'), - url=item.url.replace("stream_bleach.htm",scrapedurl) if "stream_bleach.htm" in item.url else item.url.replace("stream_dgray-man.htm", scrapedurl), - plot=scrapedtitle, - extra=item.extra, - thumbnail=item.thumbnail, - fanart=item.fanart, - fulltitle="%s Ep: %s | %s" % (animetitle, scrapednumber, scrapedtitle))) - - if item.extra == "bleach": - itemlist.append( - Item(channel=item.channel, - action="oav", - title=support.typo("OAV e Movies",'bold color kod'), - url=item.url.replace("stream_bleach.htm", "stream_bleach_movie_oav.htm"), - extra=item.extra, - thumbnail=item.thumbnail, - fanart=item.fanart)) - - return list(reversed(itemlist)) - - -def oav(item): - logger.info("[BleachPortal.py]==> oav") - itemlist = [] - - data = httptools.downloadpage(item.url).data - patron = r'?[-\s+(.*?)<[^<]+<[^<]+<[^<]+<[^<]+<.*?\s+?.*?([^<]+).*?\s?.*?' - matches = re.compile(patron, re.DOTALL).findall(data) - - for scrapednumber, scrapedtitle, scrapedurl in matches: - itemlist.append( - Item(channel=item.channel, - action="findvideos", - title=support.typo(scrapednumber, 'bold'), - url=item.url.replace("stream_bleach_movie_oav.htm", scrapedurl), - plot=scrapedtitle, - extra=item.extra, - thumbnail=item.thumbnail, - fulltitle=scrapednumber + " | " + scrapedtitle)) - - return list(reversed(itemlist)) - - -def findvideos(item): - logger.info("[BleachPortal.py]==> findvideos") - itemlist = [] - - if "bleach//" in item.url: - item.url = re.sub(r'\w+//', "", item.url) - - data = httptools.downloadpage(item.url).data - - if "bleach" in item.extra: - video = scrapertools.find_single_match(data, 'file: "(.*?)",') - else: - video = scrapertools.find_single_match(data, 'file=(.*?)&').rsplit('/', 1)[-1] - - itemlist.append( - Item(channel=item.channel, - action="play", - title="Diretto %s" % item.title, - url=item.url.replace(item.url.split("/")[-1], "/" + video), - thumbnail=item.thumbnail, - fulltitle=item.fulltitle)) - return itemlist diff --git a/channels/guardarefilm.json b/channels/guardarefilm.json deleted file mode 100644 index f4a8f985..00000000 --- a/channels/guardarefilm.json +++ /dev/null @@ -1,44 +0,0 @@ -{ - "id": "guardarefilm", - "name": "Guardarefilm", - "active": true, - "adult": false, - "language": ["ita"], - "thumbnail": "https:\/\/raw.githubusercontent.com\/Zanzibar82\/images\/master\/posters\/guardarefilm.png", - "bannermenu": "https:\/\/raw.githubusercontent.com\/Zanzibar82\/images\/master\/posters\/guardarefilm.png", - "categories": ["tvshow","movie"], - "settings": [ - { - "id": "include_in_global_search", - "type": "bool", - "label": "Includi ricerca globale", - "default": false, - "enabled": false, - "visible": false - }, - { - "id": "include_in_newest_peliculas", - "type": "bool", - "label": "Includi in Novità - Film", - "default": true, - "enabled": true, - "visible": true - }, - { - "id": "include_in_newest_series", - "type": "bool", - "label": "Includi in Novità - Serie TV", - "default": true, - "enabled": true, - "visible": true - }, - { - "id": "include_in_newest_italiano", - "type": "bool", - "label": "Includi in Novità - Italiano", - "default": true, - "enabled": true, - "visible": true - } - ] -} diff --git a/channels/guardarefilm.py b/channels/guardarefilm.py deleted file mode 100644 index 880d4b98..00000000 --- a/channels/guardarefilm.py +++ /dev/null @@ -1,313 +0,0 @@ -# -*- coding: utf-8 -*- -# ------------------------------------------------------------ -# Ringraziamo Icarus crew -# Canale per guardarefilm -# ---------------------------------------------------------- -import re - -import urlparse - -from core import httptools -from core import scrapertools -from core import servertools -from core.item import Item -from platformcode import logger, config - -__channel__ = 'guardarefilm' -host = config.get_channel_url(__channel__) - -headers = [['Referer', host]] - - -def mainlist(item): - logger.info("kod.guardarefilm mainlist") - itemlist = [Item(channel=item.channel, - title="[COLOR azure]Novita'[/COLOR]", - action="peliculas", - url="%s/streaming-al-cinema/" % host, - thumbnail="http://orig03.deviantart.net/6889/f/2014/079/7/b/movies_and_popcorn_folder_icon_by_matheusgrilo-d7ay4tw.png"), - Item(channel=item.channel, - title="[COLOR azure]HD[/COLOR]", - action="peliculas", - url="%s/film-streaming-hd/" % host, - thumbnail="http://orig03.deviantart.net/6889/f/2014/079/7/b/movies_and_popcorn_folder_icon_by_matheusgrilo-d7ay4tw.png"), - Item(channel=item.channel, - title="[COLOR azure]Popolari[/COLOR]", - action="pelis_top100", - url="%s/top100.html" % host, - thumbnail="http://orig03.deviantart.net/6889/f/2014/079/7/b/movies_and_popcorn_folder_icon_by_matheusgrilo-d7ay4tw.png"), - Item(channel=item.channel, - title="[COLOR azure]Categorie[/COLOR]", - action="categorias", - url=host+'/streaming-film/', - thumbnail="http://orig03.deviantart.net/6889/f/2014/079/7/b/movies_and_popcorn_folder_icon_by_matheusgrilo-d7ay4tw.png"), - Item(channel=item.channel, - title="[COLOR azure]Animazione[/COLOR]", - action="peliculas", - url="%s/streaming-cartoni-animati/" % host, - thumbnail="http://orig09.deviantart.net/df5a/f/2014/169/2/a/fist_of_the_north_star_folder_icon_by_minacsky_saya-d7mq8c8.png"), - Item(channel=item.channel, - title="[COLOR yellow]Cerca...[/COLOR]", - action="search", - extra="movie", - thumbnail="http://dc467.4shared.com/img/fEbJqOum/s7/13feaf0c8c0/Search"), - Item(channel=item.channel, - title="[COLOR azure]Serie TV[/COLOR]", - action="peliculas_tv", - extra="tvshow", - url="%s/serie-tv-streaming/" % host, - thumbnail="http://orig03.deviantart.net/6889/f/2014/079/7/b/movies_and_popcorn_folder_icon_by_matheusgrilo-d7ay4tw.png"), - Item(channel=item.channel, - title="[COLOR yellow]Cerca Serie TV...[/COLOR]", - action="search", - extra="tvshow", - thumbnail="http://dc467.4shared.com/img/fEbJqOum/s7/13feaf0c8c0/Search")] - return itemlist - - -def newest(categoria): - logger.info("kod.guardarefilm newest" + categoria) - itemlist = [] - item = Item() - try: - if categoria == "film": - item.url = host + "/streaming-al-cinema/" - item.action = "peliculas" - itemlist = peliculas(item) - - if itemlist[-1].action == "peliculas": - itemlist.pop() - - # Continua la ricerca in caso di errore - except: - import sys - for line in sys.exc_info(): - logger.error("{0}".format(line)) - return [] - - return itemlist - - -def categorias(item): - logger.info("kod.guardarefilm categorias") - itemlist = [] - - data = httptools.downloadpage(item.url, headers=headers).data - - # Narrow search by selecting only the combo - bloque = scrapertools.find_single_match(data, '
    (.*?)
') - - # The categories are the options for the combo - patron = '
  • (.*?)
  • ' - matches = re.compile(patron, re.DOTALL).findall(bloque) - - for scrapedurl, scrapedtitle in matches: - scrapedurl = urlparse.urljoin(item.url, scrapedurl) - scrapedthumbnail = "" - scrapedplot = "" - itemlist.append( - Item(channel=item.channel, - action="peliculas", - title="[COLOR azure]" + scrapedtitle + "[/COLOR]", - url=scrapedurl, - thumbnail=scrapedthumbnail, - plot=scrapedplot)) - - return itemlist - - -def search(item, texto): - logger.info("[guardarefilm.py] " + item.url + " search " + texto) - section = "" - if item.extra == "tvshow": - section = "0" - elif item.extra == "movie": - section = "1" - item.url = '%s?do=search_advanced&q=%s§ion=%s&director=&actor=&year_from=&year_to=' % (host, texto, section) - try: - if item.extra == "movie": - return peliculas(item) - if item.extra == "tvshow": - return peliculas_tv(item) - # Continua la ricerca in caso di errore - except: - import sys - for line in sys.exc_info(): - logger.error("%s" % line) - return [] - - -def peliculas(item): - logger.info("kod.guardarefilm peliculas") - itemlist = [] - - # Carica la pagina - data = httptools.downloadpage(item.url, headers=headers).data - - # Estrae i contenuti - patron = '' - matches = re.compile(patron, re.DOTALL).findall(data) - - for scrapedurl, scrapedthumbnail, scrapedtitle in matches: - scrapedplot = "" - scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle) - itemlist.append( - Item(channel=item.channel, - action="episodios" if item.extra == "tvshow" else "findvideos", - contentType="movie", - fulltitle=scrapedtitle, - show=scrapedtitle, - title="[COLOR azure]" + scrapedtitle + "[/COLOR]", - url=scrapedurl, - thumbnail=urlparse.urljoin(host, scrapedthumbnail), - plot=scrapedplot, - folder=True)) - - # Paginazione - patronvideos = '
    .*?' - matches = re.compile(patronvideos, re.DOTALL).findall(data) - - if len(matches) > 0: - scrapedurl = urlparse.urljoin(item.url, matches[0]) - itemlist.append( - Item(channel=item.channel, - action="peliculas", - title="[COLOR lightgreen]" + config.get_localized_string(30992) + "[/COLOR]", - url=scrapedurl, - thumbnail="http://2.bp.blogspot.com/-fE9tzwmjaeQ/UcM2apxDtjI/AAAAAAAAeeg/WKSGM2TADLM/s1600/pager+old.png", - folder=True)) - - return itemlist - - -def peliculas_tv(item): - logger.info("kod.guardarefilm peliculas") - itemlist = [] - - # Carica la pagina - data = httptools.downloadpage(item.url, headers=headers).data - - # Estrae i contenuti - patron = '' - matches = re.compile(patron, re.DOTALL).findall(data) - - for scrapedurl, scrapedthumbnail, scrapedtitle in matches: - scrapedplot = "" - scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle) - itemlist.append( - Item(channel=item.channel, - action="episodios" if item.extra == "tvshow" else "findvideos", - fulltitle=scrapedtitle, - show=scrapedtitle, - title="[COLOR azure]" + scrapedtitle + "[/COLOR]", - url=scrapedurl, - thumbnail=urlparse.urljoin(host, scrapedthumbnail), - plot=scrapedplot, - folder=True)) - - # Paginazione - patronvideos = '
    .*?' - matches = re.compile(patronvideos, re.DOTALL).findall(data) - - if len(matches) > 0: - scrapedurl = urlparse.urljoin(item.url, matches[0]) - itemlist.append( - Item(channel=item.channel, - action="peliculas_tv", - title="[COLOR lightgreen]" + config.get_localized_string(30992) + "[/COLOR]", - url=scrapedurl, - thumbnail="http://2.bp.blogspot.com/-fE9tzwmjaeQ/UcM2apxDtjI/AAAAAAAAeeg/WKSGM2TADLM/s1600/pager+old.png", - folder=True)) - - return itemlist - -def pelis_top100(item): - logger.info("kod.guardarefilm peliculas") - itemlist = [] - - # Carica la pagina - data = httptools.downloadpage(item.url, headers=headers).data - - # Estrae i contenuti - patron = r'(.*?\(\d+\))' - matches = re.compile(patron).findall(data) - - for scrapedurl, scrapedtitle in matches: - html = httptools.downloadpage(scrapedurl, headers=headers).data - start = html.find("
    ") - end = html.find("
    ", start) - scrapedplot = html[start:end] - scrapedplot = re.sub(r'<[^>]*>', '', scrapedplot) - scrapedplot = scrapertools.decodeHtmlentities(scrapedplot) - scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle) - scrapedthumbnail = scrapertools.find_single_match(html, r'class="poster-wrapp">' - patron += r'[^>]+>[^>]+>[^>]+>[^>]+>[^>]+>(.*?)' - matches = re.compile(patron, re.DOTALL).findall(data) - for scrapedtitle, scrapedurl in matches: - scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle) - itemlist.append( - Item(channel=item.channel, - action="findvideos", - contentType="episode", - title=scrapedtitle, - url=scrapedurl, - thumbnail=item.thumbnail, - extra=item.extra, - fulltitle=item.fulltitle, - show=item.show)) - - if config.get_videolibrary_support() and len(itemlist) != 0: - itemlist.append( - Item(channel=item.channel, - title="[COLOR lightblue]%s[/COLOR]" % config.get_localized_string(30161), - url=item.url, - action="add_serie_to_library", - extra="episodios", - show=item.show)) - - return itemlist - - -def findvideos(item): - logger.info("kod.guardarefilm findvideos") - - # Carica la pagina - data = item.url if item.contentType == "episode" else httptools.downloadpage(item.url).data - - itemlist = servertools.find_video_items(data=data) - for videoitem in itemlist: - videoitem.title = item.title + videoitem.title - videoitem.fulltitle = item.fulltitle - videoitem.thumbnail = item.thumbnail - videoitem.show = item.show - videoitem.plot = item.plot - videoitem.channel = item.channel - videoitem.contentType = item.contentType - - return itemlist diff --git a/channels/guardaseriecc.json b/channels/guardaseriecc.json deleted file mode 100644 index 1df288e7..00000000 --- a/channels/guardaseriecc.json +++ /dev/null @@ -1,36 +0,0 @@ -{ - "id": "guardaseriecc", - "name": "Guardaserie.cc", - "active": true, - "adult": false, - "language": ["ita"], - "thumbnail": "https:\/\/raw.githubusercontent.com\/costaplus\/images\/master\/posters\/guardaseriecc.png", - "bannermenu": "https:\/\/raw.githubusercontent.com\/costaplus\/images\/master\/posters\/guardaseriecc.png", - "categories": ["tvshow"], - "settings": [ - { - "id": "include_in_global_search", - "type": "bool", - "label": "Includi ricerca globale", - "default": false, - "enabled": false, - "visible": false - }, - { - "id": "include_in_newest_series", - "type": "bool", - "label": "Includi in Novità - Serie TV", - "default": true, - "enabled": true, - "visible": true - }, - { - "id": "include_in_newest_italiano", - "type": "bool", - "label": "Includi in Novità - Italiano", - "default": true, - "enabled": true, - "visible": true - } - ] -} diff --git a/channels/guardaseriecc.py b/channels/guardaseriecc.py deleted file mode 100644 index 232f5a4e..00000000 --- a/channels/guardaseriecc.py +++ /dev/null @@ -1,263 +0,0 @@ -# -*- coding: utf-8 -*- -# ------------------------------------------------------------ -# Ringraziamo Icarus crew -# Canale per guardaseriecc -# -# ---------------------------------------------------------- -import re - -from core import httptools, scrapertools, servertools -from core import tmdb -from core.item import Item -from lib import unshortenit -from platformcode import logger, config - -__channel__ = 'guardaseriecc' -host = config.get_channel_url(__channel__) -headers = [['Referer', host]] - - -def mainlist(item): - logger.info("Alfa.leserietv mainlist") - itemlist = [Item(channel=item.channel, - action="lista_serie", - title="[COLOR azure]Tutte le serie[/COLOR]", - url="%s/serietv/" % host, - thumbnail=thumbnail_lista, - fanart=FilmFanart), - Item(channel=item.channel, - title="[COLOR azure]Categorie[/COLOR]", - action="categoria", - url=host, - thumbnail=thumbnail_categoria, - fanart=FilmFanart), - Item(channel=item.channel, - action="search", - title="[COLOR orange]Cerca...[/COLOR]", - thumbnail=thumbnail_cerca, - fanart=FilmFanart)] - return itemlist - - -def categoria(item): - logger.info("[Alfa].[guardareseriecc] [categoria]") - itemlist = [] - - patron = '
  • (.*?)' - data = httptools.downloadpage(item.url, headers=headers).data - matches = scrapertools.find_multiple_matches(data, patron) - - for scrapedurl, scrapedtitle in matches: - itemlist.append(Item(channel=item.channel, - action="lista_serie", - title="[COLOR azure]" + scrapedtitle + "[/COLOR]", - url=scrapedurl, - thumbnail=item.thumbnail, - fulltitle=scrapedtitle, - show=scrapedtitle, viewmode="movie")) - - return itemlist - - -def lista_serie(item): - logger.info("[Alfa].[guardareseriecc] [lista_serie]") - itemlist = [] - patron = '[^<]+' - data = httptools.downloadpage(item.url, headers=headers).data - matches = re.compile(patron, re.DOTALL).findall(data) - scrapertools.printMatches(matches) - - for scrapedthumbnail, scrapedtitle, scrapedurl in matches: - scrapedtitle = scrapedtitle.split("(")[0] - scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle).strip() - itemlist.append( - Item(channel=item.channel, - action="episodios", - title="[COLOR azure]" + scrapedtitle + "[/COLOR]", - url=scrapedurl, - thumbnail=scrapedthumbnail, - fulltitle=scrapedtitle, - show=scrapedtitle, viewmode="movie")) - - # Paginazione - # =========================================================== - patron = 'class="current">.*? 0: - itemlist.append( - Item(channel=item.channel, - action="lista_serie", - title="[COLOR lightgreen]" + config.get_localized_string(30992) + "[/COLOR]", - url=matches, - thumbnail=thumbnail_successivo, - folder=True)) - - tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True) - return itemlist - - -def episodios(item): - logger.info("[Alfa].[guardareseriecc] [stagione]") - itemlist = [] - - patron = '.*?' - data = httptools.downloadpage(item.url, headers=headers).data - elenco = scrapertools.find_single_match(data, patron) - - patron = '.*?Stagioni.*?[^<]+(.*?)' - data = httptools.downloadpage(item.url, headers=headers).data - elenco = scrapertools.find_single_match(data, patron, 0) - - patron = '(.*?)' - elenco_link = scrapertools.find_multiple_matches(elenco, patron) - - for scrapedurl, scrapedtitle in elenco_link: - data = httptools.downloadpage(scrapedurl, headers=headers).data - if 'protectlink' in data: - urls = scrapertools.find_multiple_matches(data, r'