# -*- coding: utf-8 -*- # -*- Channel PepeCine -*- # -*- Created for Alfa-addon -*- # -*- By the Alfa Develop Group -*- import re import urlparse from core import httptools from core import jsontools from core import scrapertools from core import servertools from core import tmdb from core.item import Item, InfoLabels from platformcode import config, logger host = "https://pepecine.info" perpage = 20 def mainlist1(item): logger.info() itemlist = [] itemlist.append(Item(channel=item.channel, title="Películas", action='movies_menu')) #itemlist.append(item.clone(title="Series", action='tvshows_menu')) return itemlist def mainlist(item): logger.info() itemlist = [] itemlist.append(Item(channel=item.channel, title="Ultimas", url=host+'/peliculas-tv-online', action='list_latest', indexp=1, type='movie')) itemlist.append(Item(channel=item.channel, title="Todas", url= host+'/ver-online', action='list_all', page='1', type='movie')) itemlist.append(Item(channel=item.channel, title="Género", url= host, action='genero', page='1', type='movie')) itemlist.append(Item(channel=item.channel, title = "", action ="")) itemlist.append(Item(channel=item.channel, title="Buscar", url= host+'/esta-online?q=', action='search', page='1', type='movie')) return itemlist def genero(item): logger.info() itemlist=[] data = httptools.downloadpage(item.url).data data = data.replace("\n","") bloque = scrapertools.find_single_match(data, 'Peliculas
.*?SlideMenu1_Folder">.*?') patron = '|\s{2,}', "", data) return data def list_latest(item): logger.info() itemlist = [] data = get_source(item.url) data_url= scrapertools.find_single_match(data,'= item.indexp and count < item.indexp + perpage: path = scrapertools.find_single_match(thumbnail, "w\w+(/\w+.....)") filtro_list = {"poster_path": path} filtro_list = filtro_list.items() itemlist.append(Item(channel=item.channel, title=title, fulltitle=title, contentTitle=title, url=host+url, thumbnail=thumbnail, language=language, infoLabels={'filtro': filtro_list}, extra="one", action='findvideos')) tmdb.set_infoLabels(itemlist) item.indexp += perpage itemlist.append(Item(channel=item.channel, title="Siguiente >>", url=item.url, extra="one", indexp=item.indexp, action='list_latest')) return itemlist def list_all(item): logger.info() itemlist=[] genero = scrapertools.find_single_match(item.url, "genre=(\w+)") data= get_source(item.url) token = scrapertools.find_single_match(data, "token:.*?'(.*?)'") url = host+'/titles/paginate?_token=%s&perPage=24&page=%s&order=mc_num_of_votesDesc&type=%s&minRating=&maxRating=&availToStream=1&genres[]=%s' % (token, item.page, item.type, genero) data = httptools.downloadpage(url).data dict_data = jsontools.load(data) items = dict_data['items'] for dict in items: new_item = Item(channel=item.channel, title=dict['title']+' [%s]' % dict['year'], plot = dict['plot'], thumbnail=dict['poster'], url=dict['link'], infoLabels={'year':dict['year']}) if item.type == 'movie': new_item.contentTitle=dict['title'] new_item.fulltitle=dict['title'] new_item.action = 'findvideos' elif item.type == 'series': new_item.contentSerieName = dict['title'] new_item.action = '' itemlist.append(new_item) tmdb.set_infoLabels(itemlist) itemlist.append(item.clone(title='Siguiente>>>', url=item.url, action='list_all', type= item.type, page=str(int(item.page) + 1))) return itemlist def findvideos(item): logger.info() itemlist=[] if item.extra == "one": data = httptools.downloadpage(item.url).data patron = "renderTab.bind.*?'([^']+).*?" patron += "app.utils.getFavicon.*?(.*?) .*?" patron += 'color:#B1FFC5;">([^<]+)' matches = scrapertools.find_multiple_matches(data, patron) for scrapedurl, scrapedlanguage, scrapedquality in matches: title = "Ver enlace en %s " + "[" + scrapedlanguage + "]" + "[" + scrapedquality + "]" if scrapedlanguage != 'zc': itemlist.append(item.clone(action='play', title=title, url=scrapedurl, language=scrapedlanguage )) itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server.capitalize()) else: for link in item.url: language = scrapertools.find_single_match(link['label'], '(.*?)