def findvideos(item): log() data = '' matches = support.match(item, 'str="([^"]+)"')[0] if matches: for match in matches: data += str(jsfunctions.unescape(re.sub('@|g', '%', match))) data += str(match) log('DATA', data) if 'animepertutti' in data: log('ANIMEPERTUTTI!') else: data = '' itemlist = support.server(item, data) if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) itemlist = filtertools.get_links(itemlist, item, list_language) autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info() itemlist = [] soup = create_soup(item.url) matches = soup.find_all("div", id=re.compile(r"^source-player-\d+")) for elem in matches: try: url = elem.iframe['src'] except: url = elem.text lang = "CAST" if not config.get_setting('unify'): title = ' (%s)' % (lang) else: title = '' if url != '' and not "mirrorace" in url: #mirrorrace son descargas con recaptcha itemlist.append(item.clone(action="play", title='%s'+title, url=url, language=lang )) itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server.capitalize()) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # 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' and not "/episodios/" in item.url : itemlist.append(item.clone(action="add_pelicula_to_library", title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url, extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): logger.info('[filmsenzalimiti.py] findvideos') itemlist = support.hdpass_get_servers(item) # Link Aggiungi alla Libreria if item.contentType == 'movie': if config.get_videolibrary_support( ) and len(itemlist) > 0 and item.extra != 'findservers': itemlist.append( Item(channel=item.channel, title= '[COLOR lightblue][B]Aggiungi alla videoteca[/B][/COLOR]', url=item.url, action="add_pelicula_to_library", extra="findservers", contentTitle=item.contentTitle)) #Necessario per filtrare i Link if checklinks: itemlist = servertools.check_list_links(itemlist, checklinks_number) # Necessario per FilterTools # itemlist = filtertools.get_links(itemlist, item, list_language) # Necessario per AutoPlay autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info() itemlist = [] data = get_source(item.url) #return patron = 'video\[\d+\] = \'<iframe src="([^"]+)"' matches = re.compile(patron, re.DOTALL).findall(data) for scrapedurl in matches: if 'animeboom' in scrapedurl: new_data = get_source(scrapedurl) scrapedurl = scrapertools.find_single_match(new_data, 'src:"([^,]+)",') if scrapedurl != '': itemlist.append(Item(channel=item.channel, title='%s', url=scrapedurl, action='play', language = item.language, infoLabels=item.infoLabels)) itemlist = servertools.get_servers_itemlist(itemlist, lambda x: x.title % x.server.capitalize()) if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info('[animeleggendari.py] findvideos') data = httptools.downloadpage(item.url).data itemlist = servertools.find_video_items(data=data) for videoitem in itemlist: server = re.sub(r'[-\[\]\s]+', '', videoitem.title) videoitem.title = "".join([ "[%s] " % support.color(server.capitalize(), 'orange'), item.title ]) videoitem.fulltitle = item.fulltitle videoitem.show = item.show videoitem.thumbnail = item.thumbnail videoitem.channel = item.channel # Richiesto per Verifica se i link esistono if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Richiesto per FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Autoplay autoplay.start(itemlist, item) return itemlist
def controls(itemlist, item, AutoPlay=True, CheckLinks=True): from core import jsontools from platformcode.config import get_setting CL = get_setting('checklinks') or get_setting('checklinks', item.channel) autoplay_node = jsontools.get_node_from_file('autoplay', 'AUTOPLAY') channel_node = autoplay_node.get(item.channel, {}) if not channel_node: # non ha mai aperto il menu del canale quindi in autoplay_data.json non c'e la key channelFile = __import__('channels.' + item.channel, fromlist=["channels.%s" % item.channel]) autoplay.init(item.channel, channelFile.list_servers, channelFile.list_quality) autoplay_node = jsontools.get_node_from_file('autoplay', 'AUTOPLAY') channel_node = autoplay_node.get(item.channel, {}) settings_node = channel_node.get('settings', {}) AP = get_setting('autoplay') or settings_node['active'] if CL and not AP: if get_setting('checklinks', item.channel): checklinks = get_setting('checklinks', item.channel) else: checklinks = get_setting('checklinks') if get_setting('checklinks_number', item.channel): checklinks_number = get_setting('checklinks_number', item.channel) else: checklinks_number = get_setting('checklinks_number') itemlist = servertools.check_list_links(itemlist, checklinks_number) if AutoPlay == True: autoplay.start(itemlist, item) videolibrary(itemlist, item, function_level=3) return itemlist
def findvideos(item): logger.info() itemlist = [] if item.contentType == 'episode': data = item.url urls = re.findall( r'<a\s*ref="nofollow" target="_blank" act="\d+"[^n]+newlink="([^"]+)" class="blue-link">[^<]+</a>', data, re.DOTALL) else: data = httptools.downloadpage(item.url).data urls = re.findall( r'<iframe\s*allowfullscreen class="embed-responsive-item" src="([^"]+)"></iframe></div>', data, re.DOTALL) if urls: for url in urls: url, c = unshortenit.unshorten(url) data += url + '\n' itemlist += servertools.find_video_items(data=data) for videoitem in itemlist: videoitem.title = "[[COLOR green][B]%s[/B][/COLOR]] %s" % ( videoitem.title.capitalize(), item.title) videoitem.fulltitle = item.fulltitle videoitem.show = item.show videoitem.thumbnail = item.thumbnail videoitem.channel = item.channel videoitem.contentType = item.contentType videoitem.language = IDIOMAS['Italiano'] # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) if item.contentType != 'episode': if config.get_videolibrary_support( ) and len(itemlist) > 0 and item.extra != 'findvideos': itemlist.append( Item(channel=item.channel, title= '[COLOR yellow][B]Aggiungi alla videoteca[/B][/COLOR]', url=item.url, action="add_pelicula_to_library", extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): logger.info() itemlist = [] data = get_source(item.url) bloq = scrapertools.find_single_match(data, '</th>(.*?)</table>') patron = '<a href="([^"]+)".*?<td>(.*?)</td><td class="hidden-xs">(.*?)</td>' matches = re.compile(patron, re.DOTALL).findall(bloq) #for quality_value, lang_value, scrapedurl in matches: for scrapedurl, lang_value, quality_value in matches: server = "" if lang_value not in IDIOMAS: lang_value = '6' if quality_value not in CALIDADES: quality_value = '3' language = IDIOMAS[lang_value] quality = CALIDADES[quality_value] if not config.get_setting("unify"): title = ' [%s] [%s]' % (quality, language) else: title = '' if scrapedurl.startswith("magnet:"): server = "torrent" itemlist.append(Item(channel=item.channel, url=scrapedurl, title='%s'+title, action='play', language=language, quality=quality, infoLabels=item.infoLabels, server=server)) embed = scrapertools.find_single_match(data, 'movie-online-iframe" src="([^"]+)"') if embed: fquality = itemlist[1].quality flanguage = itemlist[1].language title = ' [%s] [%s]' % (quality, language) itemlist.append(item.clone(title="%s"+title, url=embed, language=flanguage, quality=fquality, infoLabels=item.infoLabels, action="play")) itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server.capitalize()) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) itemlist = sorted(itemlist, key=lambda it: it.language) if item.contentType != 'episode': 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 findvideos(item): logger.info() from lib import generictools import urllib itemlist = [] data = get_source(item.url) data = data.replace("'", '"') patron = 'data-type="([^"]+)" data-post="(\d+)" data-nume="(\d+).*?class="title">([^>]+)<' matches = re.compile(patron, re.DOTALL).findall(data) for type, pt, nm, language in matches: if 'sub' in language.lower() or language not in IDIOMAS: language = 'VOSE' post = {'action': 'doo_player_ajax', 'post': pt, 'nume': nm, 'type': type} post = urllib.urlencode(post) new_data = httptools.downloadpage(host + 'wp-admin/admin-ajax.php', post=post, headers={'Referer': item.url}).data hidden_url = scrapertools.find_single_match(new_data, "src='([^']+)'") new_data = get_source(hidden_url) matches = scrapertools.find_multiple_matches(new_data, '\["\d+","([^"]+)",\d+\]') for url in matches: if not config.get_setting('unify'): title = ' [%s]' % IDIOMAS[language] else: title = '' url = url.replace('\\/', '/') if 'playdrive' in url: new_data = get_source(url) url = scrapertools.find_single_match(new_data, 'file:"([^"]+)"') itemlist.append(Item(channel=item.channel, title='%s' + title, url=url, action='play', language=IDIOMAS[language], infoLabels=item.infoLabels)) itemlist = servertools.get_servers_itemlist(itemlist, lambda x: x.title % x.server.capitalize()) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) itemlist = sorted(itemlist, key=lambda it: it.language) if item.contentType != 'episode': 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 findvideos(item): logger.info() itemlist = [] data = httptools.downloadpage(item.url).data data = re.sub(r"\n|\r|\t| |<br>", "", data) patron = 'id="plays-(\d+)">\s*([^<]+)</div' matches = scrapertools.find_multiple_matches(data, patron) for xnumber, xname in matches: if "/episodios/" in item.url: lang = scrapertools.find_single_match( data, '#player2%s">([^<]+)</a>' % xnumber) else: lang = scrapertools.find_single_match(data, '#div%s">([^<]+)<' % xnumber) if "lat" in lang.lower(): lang = "Lat" if 'cast' in lang.lower(): lang = "Cast" if 'sub' in lang.lower(): lang = "Sub" if lang in IDIOMAS: lang = IDIOMAS[lang] post = {"nombre": xname} url = httptools.downloadpage("https://www.cine-online.eu/ecrypt", post=urllib.urlencode(post)).data url = scrapertools.find_single_match( url, '<(?:IFRAME SRC|iframe src)="([^"]+)"') if not config.get_setting('unify'): title = ' (%s)' % (lang) else: title = '' if url != '': itemlist.append( item.clone(action="play", title='%s' + title, url=url, language=lang)) itemlist = servertools.get_servers_itemlist( itemlist, lambda i: i.title % i.server.capitalize()) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # 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' and not "/episodios/" in item.url: itemlist.append( Item(channel=item.channel, action="add_pelicula_to_library", title= '[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url, extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): logger.info() itemlist = [] data = httptools.downloadpage(item.url).data data = re.sub(r"<!--.*?-->", "", data) data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) bloque_tab = scrapertools.find_single_match(data, '<div id="verpelicula">(.*?)<div class="tab_container">') patron = '<li><a href="#([^<]+)"><span class="re">\d<\/span><span class="([^<]+)"><\/span><span class=.*?>([^<]+)<\/span>' check = re.compile(patron, re.DOTALL).findall(bloque_tab) servers_data_list = [] patron = '<div id="(tab\d+)" class="tab_content"><script type="text/rocketscript">(\w+)\("([^"]+)"\)</script></div>' matches = re.compile(patron, re.DOTALL).findall(data) if len(matches) == 0: patron = '<div id="(tab\d+)" class="tab_content"><script>(\w+)\("([^"]+)"\)</script></div>' matches = re.compile(patron, re.DOTALL).findall(data) for check_tab, server, id in matches: if check_tab in str(check): idioma, calidad = scrapertools.find_single_match(str(check), "" + check_tab + "', '(.*?)', '(.*?)'") servers_data_list.append([server, id, idioma, calidad]) url = host + "/Js/videod.js" data = httptools.downloadpage(url).data data = re.sub(r"\n|\r|\t|\s{2}| ", "", data) data = data.replace('<iframe width="100%" height="400" scrolling="no" frameborder="0"', '') patron = 'function (\w+)\(id\).*?' patron += 'data-src="([^"]+)"' matches = scrapertools.find_multiple_matches(data, patron) for server, url in matches: for enlace, id, idioma, calidad in servers_data_list: if server == enlace: video_url = re.sub(r"embed\-|\-.*?x.*?\.html|u\'|\'\(", "", str(url)) video_url = re.sub(r"'\+codigo\+'", "", video_url) video_url = video_url.replace('embed//', 'embed/') video_url = video_url + id if "goo.gl" in video_url: try: from unshortenit import unshorten url = unshorten(video_url) video_url = scrapertools.get_match(str(url), "u'([^']+)'") except: continue title = "Ver en: %s [" + idioma + "][" + calidad + "]" itemlist.append( item.clone(title=title, url=video_url, action="play", thumbnail=item.category, language=idioma, quality=calidad)) tmdb.set_infoLabels(itemlist) itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server.capitalize()) if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) if item.library and config.get_videolibrary_support() and len(itemlist) > 0: infoLabels = {'tmdb_id': item.infoLabels['tmdb_id'], 'title': item.fulltitle} itemlist.append(Item(channel=item.channel, title="Añadir esta película a la videoteca", action="add_pelicula_to_library", url=item.url, infoLabels=infoLabels, text_color="0xFFff6666", thumbnail='http://imgur.com/0gyYvuC.png')) return itemlist
def findvideos(item): # Questa def. deve sempre essere nominata findvideos logger.info('[filmsenzalimiticc.py] findvideos') itemlist = [] # Carica la pagina data = httptools.downloadpage(item.url, headers=headers).data # Aggira protectlink if 'protectlink' in data: urls = scrapertools.find_multiple_matches( data, r'<iframe src="[^=]+=(.*?)"') for url in urls: url = url.decode('base64') if '\t' in url: #fix alcuni link presentano una tabulazione finale. url = url[:-1] data += '\t' + url if 'nodmca' in data: #fix player Openload sezione Serie TV page = httptools.downloadpage(url, headers=headers).data data += '\t' + scrapertools.find_single_match( page, '<meta name="og:url" content="([^=]+)">') itemlist = servertools.find_video_items(data=data) for videoitem in itemlist: videoitem.title = item.fulltitle + ' - [[COLOR limegreen]' + videoitem.title + '[/COLOR] ]' videoitem.fulltitle = item.fulltitle videoitem.thumbnail = item.thumbnail videoitem.show = item.show videoitem.plot = item.plot videoitem.channel = item.channel videoitem.contentType = item.contentType # Link Aggiungi alla Libreria if item.contentType != 'episode': if config.get_videolibrary_support( ) and len(itemlist) > 0 and item.extra != 'findservers': itemlist.append( Item(channel=item.channel, title= '[COLOR lightblue][B]Aggiungi alla videoteca[/B][/COLOR]', url=item.url, action='add_pelicula_to_library', extra='findservers', contentTitle=item.contentTitle)) # Necessario per filtrare i Link if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Necessario per FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Necessario per AutoPlay autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info() itemlist = [] data = get_source(item.url) patron = 'id="option-(\d+)".*?rptss" src="([^"]+)" frameborder' matches = re.compile(patron, re.DOTALL).findall(data) lang = '' for option, scrapedurl in matches: lang = scrapertools.find_single_match( data, 'href=#option-%s>.*?/flags/(.*?).png' % option) quality = '' if lang not in IDIOMAS: lang = 'en' title = '%s %s' itemlist.append( Item(channel=item.channel, url=scrapedurl, title=title, action='play', quality=quality, language=IDIOMAS[lang], infoLabels=item.infoLabels)) itemlist = servertools.get_servers_itemlist( itemlist, lambda x: x.title % (x.server.capitalize(), x.language)) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) itemlist = sorted(itemlist, key=lambda it: it.language) if item.contentType != 'episode': 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 findvideos(item): logger.info("kod.casacinema findvideos") data = item.url if item.extra == "tvshow" else httptools.downloadpage( item.url, headers=headers).data html = httptools.downloadpage(data).data patron = '"http:\/\/shrink-service\.it\/[^\/]+\/[^\/]+\/([^"]+)"' matches = re.compile(patron, re.DOTALL).findall(html) for url in matches: if url is not None: data = data else: continue itemlist = servertools.find_video_items(data=data) for videoitem in itemlist: server = re.sub(r'[-\[\]\s]+', '', videoitem.title).capitalize() videoitem.title = "".join( ["[%s] " % support.color(server, 'orange'), item.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 videoitem.language = IDIOMAS['Italiano'] # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) if item.contentType != 'episode': if config.get_videolibrary_support( ) and len(itemlist) > 0 and item.extra != 'findvideos': itemlist.append( Item(channel=item.channel, title= '[COLOR yellow][B]Aggiungi alla videoteca[/B][/COLOR]', url=item.url, action="add_pelicula_to_library", extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): logger.info() itemlist = [] serv = [] data = httptools.downloadpage(item.url, canonical=canonical).data output = scrapertools.find_single_match( data, 'var output = "(.*?)output ').replace("\\", "") output = output.split(";") quality = scrapertools.find_single_match( data, "<strong>Calidad: </strong> (\d+)p<") online = scrapertools.find_single_match( data, '<div class="centradito"><script>[A-z0-9]+ \(([^\)]+)') online = online.replace('"', '').split(",") for elem in output: if "href" in elem: ref = scrapertools.find_single_match(elem, 'href="([^"]+)"') id = scrapertools.find_single_match(elem, 'codigo(\d+)') if id: id = (int(id) - 1) if "codigo" in ref: url = online[id] if not "no.html" in ref: url = "%s%s" % (ref, online[id]) itemlist.append( item.clone(action="play", title="%s", contentTitle=item.title, url=url)) descarga = scrapertools.find_single_match(data, "var abc = '([^']+)'") itemlist.append( item.clone(action="play", title="%s", contentTitle=item.title, url=descarga)) itemlist = servertools.get_servers_itemlist( itemlist, lambda i: i.title % i.server.capitalize()) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para AutoPlay autoplay.start(itemlist, item) if config.get_videolibrary_support() and len( itemlist ) > 0 and item.extra != 'findvideos' and not "/episodios/" in item.url: itemlist.append( item.clone( action="add_pelicula_to_library", title= '[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url, extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): logger.info() itemlist = [] audios = ["VOSE","LAT"] listed = [] soup = create_soup(item.url) descargas = "" if soup.find(src=re.compile("salynpm-links.")): descargas = soup.find(src=re.compile("salynpm-links."))['src'] if soup.find(href=re.compile("salynpm-links.")): descargas = soup.find(href=re.compile("salynpm-links."))['href'] if descargas: descargas = create_soup(descargas) data = descargas.find('div', class_='post-entry') matches = data.find_all('a') for elem in matches: url = elem['href'] url = codecs.decode(url,"unicode-escape") url = url.replace("?download=1", "").replace("dropboxusercontent", "dropbox").replace("/dl.dropbox", "/www.dropbox") if url != "" and url not in listed: listed.append(url) online = soup.find_all(type='video/mp4') codigo = soup.find(string=re.compile("document.write")) if codigo: codigo = scrapertools.find_single_match(codigo, r"document\.write\(unescape\('([^']+)'") codigo = codecs.decode(codigo.replace("%", ""), "hex") codigo = BeautifulSoup(codigo, "html5lib", from_encoding="utf-8") online = codigo.find_all(type='video/mp4') if online: for elem in online: url = elem['src'] if "bit.ly" in url: url = httptools.downloadpage(url, follow_redirects=False).headers["location"] url = codecs.decode(url,"unicode-escape") url = url.replace("?download=1", "").replace("dropboxusercontent", "dropbox").replace("/dl.dropbox", "/www.dropbox") if url != "" and url not in listed: listed.append(url) for url in listed: if not "bit.ly" in url and not "https://archive.org/download/salynpm" in url: itemlist.append(item.clone(action="play", title = "%s", language=audios, url = url )) itemlist = servertools.get_servers_itemlist(itemlist, lambda i: i.title % i.server.capitalize()) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # 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' and not "/episodios/" in item.url : itemlist.append(item.clone(action="add_pelicula_to_library", title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url, extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): log() itemlist = [] itemlist = support.hdpass_get_servers(item) if checklinks: itemlist = servertools.check_list_links(itemlist, checklinks_number) autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info("[italiafilmvideohd.py] findvideos") itemlist = [] # Carica la pagina data = httptools.downloadpage(item.url, headers=headers).data patron = r'<div class="playerhdpass" id="playerhdpass"><iframe width=".+?" height=".+?" src="([^"]+)"' url = scrapertools.find_single_match(data, patron) if url: data += httptools.downloadpage(url, headers=headers).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 videoitem.language = IDIOMAS['Italiano'] # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) if item.contentType != 'episode': if config.get_videolibrary_support( ) and len(itemlist) > 0 and item.extra != 'findvideos': itemlist.append( Item(channel=item.channel, title= '[COLOR yellow][B]Aggiungi alla videoteca[/B][/COLOR]', url=item.url, action="add_pelicula_to_library", extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): import urllib logger.info() itemlist = [] g_host = 'https://storage.googleapis.com/proven-reality-256313.appspot.com/' data = get_source(item.url) patron = r'%sreproductor\?url=([^&]+)' % host matches = re.compile(patron, re.DOTALL).findall(data) for scrapedurl in matches: server = '' scrapedurl = urllib.unquote(scrapedurl) if "cl?url=" in scrapedurl: scrapedurl = scrapertools.find_single_match( scrapedurl, '\?url=(.*)') url = g_host + scrapedurl.replace('+', '%20') server = "directo" elif '?url=' in scrapedurl: url = scrapertools.find_single_match(scrapedurl, '.*?url=([^&]+)?') else: url = scrapedurl if url: itemlist.append( Item(channel=item.channel, title='%s', url=url, action='play', language=item.language, infoLabels=item.infoLabels, server=server)) itemlist = servertools.get_servers_itemlist( itemlist, lambda x: x.title % x.server.capitalize()) if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info() itemlist = [] #g_host = 'https://192-99-219-204.sysdop.com/' data = get_source(item.url) patron = r'%sreproductor\?url=([^&]+)' % host matches = re.compile(patron, re.DOTALL).findall(data) for scrapedurl in matches: server = '' scrapedurl = urllib.unquote(scrapedurl) if "cl?url=" in scrapedurl: scrapedurl = scrapertools.find_single_match(scrapedurl, '\?url=(.*)') url = host + scrapedurl.replace('+', '%20') check = httptools.downloadpage(url, only_headers=True, ignore_response_code=True).code if check != 200: continue server = "directo" elif '?url=' in scrapedurl: url = scrapertools.find_single_match(scrapedurl, '.*?url=([^&]+)?') else: url = scrapedurl if url: itemlist.append(Item(channel=item.channel, title='%s', url=url, action='play', language=item.language, infoLabels=item.infoLabels, server=server)) itemlist = servertools.get_servers_itemlist(itemlist, lambda x: x.title % x.server.capitalize()) if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) if config.get_videolibrary_support() and itemlist > 0 and item.extra != 'findvideos' and not item.contentSerieName: 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 controls(itemlist, item, AutoPlay=True, CheckLinks=True, down_load=True): from core import jsontools from platformcode.config import get_setting CL = get_setting('checklinks') or get_setting('checklinks', item.channel) autoplay_node = jsontools.get_node_from_file('autoplay', 'AUTOPLAY') channel_node = autoplay_node.get(item.channel, {}) if not channel_node: # non ha mai aperto il menu del canale quindi in autoplay_data.json non c'e la key channelFile = __import__('channels.' + item.channel, fromlist=["channels.%s" % item.channel]) autoplay.init(item.channel, channelFile.list_servers, channelFile.list_quality) autoplay_node = jsontools.get_node_from_file('autoplay', 'AUTOPLAY') channel_node = autoplay_node.get(item.channel, {}) settings_node = channel_node.get('settings', {}) AP = get_setting('autoplay') or settings_node['active'] HS = config.get_setting('hide_servers') if CL and not AP: if get_setting('checklinks', item.channel): checklinks = get_setting('checklinks', item.channel) else: checklinks = get_setting('checklinks') if get_setting('checklinks_number', item.channel): checklinks_number = get_setting('checklinks_number', item.channel) else: checklinks_number = get_setting('checklinks_number') itemlist = servertools.check_list_links(itemlist, checklinks_number) if AutoPlay == True and not 'downloads' in inspect.stack( )[3][1] + inspect.stack()[4][1]: autoplay.start(itemlist, item) if item.contentChannel != 'videolibrary': videolibrary(itemlist, item, function_level=3) if get_setting('downloadenabled') and down_load == True: download(itemlist, item, function_level=3) VL = False try: if 'downloads' in inspect.stack()[3][1] + inspect.stack()[4][1] or \ inspect.stack()[4][3] == 'play_from_library' or \ inspect.stack()[5][3] == 'play_from_library' or \ 'videolibrary' in inspect.stack()[3][1] or \ 'videolibrary' in inspect.stack()[4][1]: VL = True except: pass if not AP or VL or not HS: return itemlist
def findvideos(item): logger.info() itemlist = [] new_item = [] data = httptools.downloadpage(item.url).data itemlist = servertools.find_video_items(data = data) url = scrapertools.find_single_match( data, 'location.href = "([^"]+)"') new_item.append(Item(url = url, title = "Torrent", server = "torrent", action = "play")) itemlist.extend(new_item) for it in itemlist: it.channel = item.channel if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) return itemlist
def findvideos(item): support.log() itemlist = support.hdpass_get_servers(item) if checklinks: itemlist = servertools.check_list_links(itemlist, checklinks_number) # itemlist = filtertools.get_links(itemlist, item, list_language) autoplay.start(itemlist, item) support.videolibrary(itemlist, item ,'color kod bold') return itemlist
def findvideos(item): support.log() itemlist = support.hdpass_get_servers(item) if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) itemlist = filtertools.get_links(itemlist, item, list_language) autoplay.start(itemlist, item) support.videolibrary(itemlist, item ,'color blue bold') return itemlist
def findvideos(item): import urllib logger.info() itemlist = [] data = get_source(item.url) patron = 'id="Opt\d+">.*?src=(.*?) frameborder' matches = re.compile(patron, re.DOTALL).findall(data) for scrapedurl in matches: server = '' scrapedurl = scrapedurl.replace('"', '') new_data = get_source(scrapedurl) if "/stream/" in scrapedurl: scrapedurl = scrapertools.find_single_match( new_data, '<source src="([^"]+)"') server = "directo" else: scrapedurl = scrapertools.find_single_match( scrapedurl, '.*?url=([^&]+)?') scrapedurl = urllib.unquote(scrapedurl) if scrapedurl != '': itemlist.append( Item(channel=item.channel, title='%s', url=scrapedurl, action='play', language=item.language, infoLabels=item.infoLabels, server=server)) itemlist = servertools.get_servers_itemlist( itemlist, lambda x: x.title % x.server.capitalize()) if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info("[casacinemaInfo.py] findvideos") itemlist = support.hdpass_get_servers(item) # Requerido para Filtrar enlaces if checklinks: itemlist = servertools.check_list_links(itemlist, checklinks_number) # Requerido para AutoPlay autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info() itemlist = [] data = get_source(item.url) patron = 'video\[\d+\] = .*?src="([^"]+)".*?;' matches = re.compile(patron, re.DOTALL).findall(data) option = 1 for scrapedurl in matches: lang = scrapertools.find_single_match(data, '"#option%s">([^<]+)<' % str(option)).strip() lang = lang.lower() if lang not in IDIOMAS: lang = 'subtitulado' quality = '' title = '%s %s' if 'redirector' in scrapedurl: url_data = httptools.downloadpage(scrapedurl).data url = scrapertools.find_single_match(url_data,'window.location.href = "([^"]+)";') else: url = scrapedurl if url != '': itemlist.append( Item(channel=item.channel, url=url, title=title, action='play', quality=quality, language=IDIOMAS[lang], infoLabels=item.infoLabels)) option += 1 itemlist = servertools.get_servers_itemlist(itemlist, lambda x: x.title % (x.server.capitalize(), x.language)) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) itemlist = sorted(itemlist, key=lambda it: it.language) if item.contentType != 'episode': 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 findvideos(item): logger.info() itemlist = [] if not "|" in item.extra and not __menu_info__: data = httptools.downloadpage(item.url).data year = scrapertools.find_single_match(data, '<div class="media-summary">.*?release.*?>(\d+)<') if year != "" and not "tmdb_id" in item.infoLabels: item.infoLabels["year"] = year tmdb.set_infoLabels_item(item, __modo_grafico__) if item.infoLabels["plot"] == "": sinopsis = scrapertools.find_single_match(data, '<p id="media-plot".*?>.*?\.\.\.(.*?)Si te parece') item.infoLabels["plot"] = scrapertools.htmlclean(sinopsis) id = scrapertools.find_single_match(item.url, '/(\d+)/') if "|" in item.extra or not __menu_info__: extra = item.extra if "|" in item.extra: extra = item.extra[:-1] url = host + "/sources/list?id=%s&type=%s&order=%s" % (id, extra, "streaming") itemlist=(get_enlaces(item, url, "Online")) url = host + "/sources/list?id=%s&type=%s&order=%s" % (id, extra, "download") itemlist.extend(get_enlaces(item, url, "de Descarga")) if extra == "media": data_trailer = httptools.downloadpage(host + "/media/trailer?idm=%s&mediaType=1" % id).json trailer_url = data_trailer["video"]["url"] if trailer_url != "": item.infoLabels["trailer"] = trailer_url title = "Ver enlaces %s - [" + item.contentTitle + "]" itemlist.append(item.clone(channel="trailertools", action="buscartrailer", title="Buscar Tráiler", text_color="magenta", context="")) if config.get_videolibrary_support() and not "|" in item.extra: itemlist.append(Item(channel=item.channel, action="add_pelicula_to_library", text_color=color5, title="Añadir película a la videoteca", url=item.url, thumbnail=item.thumbnail, fanart=item.fanart, fulltitle=item.fulltitle, extra="media|")) else: url = host + "/sources/list?id=%s&type=%s&order=%s" % (id, item.extra, item.type) type = item.type.replace("streaming", "Online").replace("download", "de Descarga") itemlist.extend(get_enlaces(item, url, type)) if __comprueba_enlaces__: for it in itemlist: if it.server != '' and it.url != '': it.url = normalizar_url(it.url, it.server) itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) return itemlist
def findvideos(item): logger.info(" findvideos") if item.contentType != "episode": return findvideos_movie(item) itemlist = servertools.find_video_items(data=item.url) logger.info(itemlist) for videoitem in itemlist: videoitem.title = "".join([ item.title, '[COLOR green][B]' + videoitem.title + '[/B][/COLOR]' ]) videoitem.fulltitle = item.fulltitle videoitem.thumbnail = item.thumbnail videoitem.show = item.show videoitem.plot = item.plot videoitem.channel = item.channel videoitem.contentType = item.contentType videoitem.language = IDIOMAS['Italiano'] # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # Requerido para FilterTools itemlist = filtertools.get_links(itemlist, item, list_language) # Requerido para AutoPlay autoplay.start(itemlist, item) if item.contentType != 'episode': if config.get_videolibrary_support( ) and len(itemlist) > 0 and item.extra != 'findvideos': itemlist.append( Item(channel=item.channel, title= '[COLOR yellow][B]Aggiungi alla videoteca[/B][/COLOR]', url=item.url, action="add_pelicula_to_library", extra="findvideos", contentTitle=item.contentTitle)) return itemlist
def findvideos(item): logger.info() itemlist = [] data = httptools.downloadpage(item.url).data patron = '"server":"[^"]+",' patron += '"lang":"([^"]+)",' patron += '"quality":"\w+ \(([^"]+)\)",' patron += '"link":"https:.*?=([^"]+)"' matches = scrapertools.find_multiple_matches(data, patron) for lang, quality, url in matches: if lang in IDIOMAS: lang = IDIOMAS[lang] url = base64.b64decode(url + "==") if not config.get_setting('unify'): title = '[COLOR red] %s [/COLOR] (%s)' % (quality, lang) else: title = '' itemlist.append( item.clone(action="play", title='%s' + title, url=url, language=lang, quality=quality, fulltitle=item.title)) itemlist = servertools.get_servers_itemlist( itemlist, lambda i: i.title % i.server.capitalize()) # Requerido para Filtrar enlaces if __comprueba_enlaces__: itemlist = servertools.check_list_links(itemlist, __comprueba_enlaces_num__) # 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, action="add_pelicula_to_library", title= '[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url, extra="findvideos", contentTitle=item.contentTitle)) return itemlist