def gethttp_referer_headers(url,referer,show): plugintools.log("gethttp_referer_headers "+url) show = plugintools.get_setting("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = "tvshows" elif show == "1": show = "seasons" elif show == "2": show = "fanart" elif show == "3": show = "list" elif show == "4": show = "thumbnail" elif show == "5": show = "movies" elif show == "6": show = "tvshows" elif show == "7": show = "episodes" plugintools.log("show= "+show) plugintools.modo_vista(show) request_headers=[] request_headers.append(["User-Agent","Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1"]) request_headers.append(["Referer", referer]) body,response_headers = plugintools.read_body_and_headers(url, headers=request_headers);print response_headers return body
def monova1_bum(params): plugintools.log('[%s %s] [BUM+] Monova results... %s' % (addonName, addonVersion, repr(params))) thumbnail = 'http://upload.wikimedia.org/wikipedia/en/f/f4/Monova.jpg' fanart = 'http://www.gadgethelpline.com/wp-content/uploads/2013/10/Digital-Piracy.png' show = 'list' plugintools.modo_vista(show) #plugintools.add_item(action="", title= '[COLOR blue][B]M[/COLOR][COLOR lightblue][I]onova.org[/I][/COLOR] [/B][COLOR lightyellow][I]By Juarrox[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) url = params.get("url") referer = 'https://monova.org/' data = gethttp_referer_headers(url, referer) #Todo: Añadir modo de vista (show) plugintools.log("data= " + data) block_matches = plugintools.find_single_match( data, '<table id="resultsTable"(.*?)<div id="hh"></div>') plugintools.log("block_matches= " + block_matches) matches = plugintools.find_multiple_matches( block_matches, '<div class="torrentname(.*?)</div></td></tr>') for entry in matches: plugintools.log("entry= " + entry) if entry.find( "Direct Download" ) >= 0: # Descartamos resultados publicitarios 'Direct Download' que descargan un .exe plugintools.log("Direct Download = Yes") else: plugintools.log("Direct Download = No") page_url = plugintools.find_single_match(entry, 'a href="([^"]+)') title_url = plugintools.find_single_match(entry, 'title="([^"]+)') size_url = plugintools.find_single_match( entry, '<div class="td-div-right pt1">(.*?)</div>') seeds = plugintools.find_single_match( entry, '<td class="d">(.*?)<td align="right" id="encoded-') seeds = seeds.replace("</td>", "") seeds = seeds.split('<td class="d">') #seeds = seeds.replace('<td align="right" id="encoded-10"', "") #seeds = seeds.replace('<td id="encoded-10" align="right"', "") try: print 'seeds', seeds if len(seeds) >= 2: semillas = '[COLOR gold][I][' + seeds[0] + '/' + seeds[ 1] + '][/I][/COLOR]' plugintools.log("semillas= " + semillas) except: pass plugintools.log("page_url= " + page_url) plugintools.log("title_url= " + title_url) plugintools.log("size_url= " + size_url) plugintools.add_item(action="monova2_bum", title=semillas + ' ' + title_url + ' [COLOR lightgreen][I][ ' + size_url + '][/I][/COLOR] ', url=page_url, thumbnail=thumbnail, fanart=fanart, folder=True, isPlayable=True)
def paginador_next(data): show = params.get( "series_id") # Obtenemos modo de vista del usuario para series TV if show == "": show = params.get("page") if show == "": show = "tvshows" plugintools.log("show= " + show) plugintools.modo_vista(show) match_paginas = plugintools.find_single_match( data, 'class="paginator">(.*?)<div id="sidebar-section">') plugintools.log("match_paginas= " + match_paginas) pag_actual = plugintools.find_single_match(match_paginas, '<strong>(.*?)</strong>') plugintools.log("pag_actual = " + str(pag_actual)) num_pags = plugintools.find_multiple_matches(match_paginas, '<a(.*?)</a>') i = 0 for entry in num_pags: i = i + 1 plugintools.log("Núm. páginas= " + str(i)) next = int(pag_actual) + 1 plugintools.add_item(action="", title='[COLOR lightyellow][I]Siguiente (Pág. ' + str(next) + ')[/I][/COLOR]', url="", thumbnail=thumbnail, fanart=fanart, page=show, folder=True, isPlayable=False)
def lista_series(match_series): show = params.get( "series_id") # Obtenemos modo de vista del usuario para series TV if show == "": show = params.get("page") if show == "": show = "tvshows" plugintools.log("show= " + show) plugintools.modo_vista(show) serie = plugintools.find_multiple_matches(match_series, '<li>(.*?)</a></li>') for entry in serie: url = plugintools.find_single_match(entry, 'href="([^"]+)') url = 'http://www.seriesyonkis.sx' + url plugintools.log("url= " + url) title_serie = plugintools.find_single_match(entry, 'title="([^"]+)').strip() plugintools.log("title_serie= " + title_serie) if title_serie != "": plugintools.log("url_serie= " + url) plugintools.add_item(action="serie_capis", title=title_serie, url=url, thumbnail=thumbnail, fanart=fanart, page=show, folder=True, isPlayable=False)
def bers_sy4(filename, title_serie): plugintools.log('[%s %s] Guardando multilink en %s...' % (addonName, addonVersion, title_serie)) params = plugintools.get_params() show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV plugintools.modo_vista(show) filename_serie = parser_title(title_serie)+'.m3u' m3u_cap = open(temp + filename, "r") m3u_cap.seek(0) data = m3u_cap.read() if os.path.exists(filename_serie): plugintools.log("Creando archivo... temp/"+filename_serie) m3u_serie = open(temp + filename_serie, "a") m3u_serie.seek(0) m3u_serie.write('#EXTM3U,view:tvshows\n\n') # Fijamos modo de vista para el BERS m3u_serie.write(data+'\n') else: m3u_serie = open(temp + filename_serie, "a") m3u_serie.write(data+'\n') m3u_cap.close() m3u_serie.close()
def SelectTemp(params, show, temp): #plugintools.log("[%s %a] Seriesadicto: selectTemp() " % (addonName, addonVersion, repr(params))) show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = params.get("page") if show is None: show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) titles_temp = [] seasons = len(temp) i = 1 while i <= seasons: titles_temp.append('[COLOR lightyellow]'+params.get("title").replace("[Multiparser]", "").strip()+': [/COLOR]Temporada '+str(i)) i = i + 1 print titles_temp select_temp = plugintools.selector(titles_temp, 'PalcoTV') i = 0 while i<= seasons : if select_temp == i: params["season"] = temp[i] GetSerieChapters(params) i = i + 1 plugintools.modo_vista(show)
def bitsnoop1_bum(params): plugintools.log("PalcoTV BitSnoop Results " + repr(params)) plugintools.log('[%s %s].bitsnoop1_bum %s' % (addonName, addonVersion, repr(params))) thumbnail = 'http://upload.wikimedia.org/wikipedia/commons/9/97/Bitsnoop.com_logo.png' fanart = 'http://wallpoper.com/images/00/41/86/68/piracy_00418668.jpg' show = 'biglist' plugintools.modo_vista(show) #plugintools.add_item(action="", title= '[COLOR green][B]Bit[/COLOR][COLOR gold][I]Snoop[/I][/COLOR] [/B][COLOR lightyellow][I]By Juarrox[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) url = params.get("url") referer = 'https://bitsnoop.com/' data = gethttp_referer_headers(url, referer) #Todo: Añadir modo de vista (show) results = plugintools.find_single_match( data, '<ol id="torrents" start="1">(.*?)</ol>') matches = plugintools.find_multiple_matches( results, '<span class="icon cat_(.*?)</div></td>') i = 0 for entry in matches: plugintools.log("entry= " + entry) i = i + 1 print i page_url = plugintools.find_single_match(entry, 'a href="([^"]+)') title_url = plugintools.find_single_match(entry, 'a href="(.*?)</a>') title_url = title_url.replace(page_url, "").replace( "<span class=srchHL>", "").replace('">', "").replace( "<b class=srchHL>", "[COLOR lightyellow][B]").replace("</b>", "[/COLOR][/B]").strip() page_url = 'http://bitsnoop.com' + page_url plugintools.log("title_url= " + title_url) plugintools.log("page_url= " + page_url) seeders = plugintools.find_single_match( entry, 'title="Seeders">(.*?)</span>') plugintools.log("seeders= " + seeders) leechers = plugintools.find_single_match( entry, 'title="Leechers">(.*?)</span>') size = plugintools.find_single_match( entry, '<tr><td align="right" valign="middle" nowrap="nowrap">(.*?)<div class="nfiles">' ) plugintools.log("size= " + size) plugintools.log("leechers= " + leechers) if seeders == "": # Verificamos el caso en que no haya datos de seeders/leechers seeders = "0" if leechers == "": leechers = "0" stats = '[COLOR gold][I][' + seeders + '/' + leechers + '][/I][/COLOR]' plugintools.add_item(action="bitsnoop2_bum", title=stats + ' ' + title_url + ' [COLOR lightgreen][I][' + size + '] [BitSnoop][/I][/COLOR]', url=page_url, thumbnail=thumbnail, fanart=fanart, folder=False, isPlayable=False)
def isohunt0_bum(params): plugintools.log('[%s %s] [BUM+] Isohunt... %s' % (addonName, addonVersion, repr(params))) thumbnail = 'http://www.userlogos.org/files/logos/dfordesmond/isohunt%201.png' fanart = 'http://2.bp.blogspot.com/_NP40rzexJsc/TMGWrixybJI/AAAAAAAAHCU/ij1--_DQEZo/s1600/Keep_Seeding____by_Carudo.jpg' show = 'list' plugintools.modo_vista(show) try: texto = "" texto = 'riddick' texto = plugintools.keyboard_input(texto) plugintools.set_setting("alluc_search", texto) params["plot"] = texto texto = texto.lower() if texto == "": errormsg = plugintools.message( "Arena+", "Por favor, introduzca el canal a buscar") #return errormsg else: texto = texto.lower().strip() texto = texto.replace(" ", "+") # https://isohunt.to/torrents/?ihq=the+strain+spanish url = 'https://isohunt.to/torrents/?ihq=' + texto + '&Torrent_sort=seeders.desc' params["url"] = url url = params.get("url") referer = 'https://isohunt.to' isohunt1_bum(params) except: pass
def bers_sy1(plot, title_fixed, title, title_serie, title_bers, page_url, thumbnail, fanart, source_web): plugintools.log('[%s %s] Creando archivos BERS... %s' % (addonName, addonVersion, title)) params = plugintools.get_params() show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV plugintools.modo_vista(show) plugintools.log("title_fixed= "+title_fixed) plugintools.log("title= "+title) plugintools.log("title_serie= "+title_serie) title_fixed = title_serie + " " + title_fixed filename = parser_title(title_fixed)+".m3u" plugintools.log("page_url= "+page_url) # Vamos a crear los archivos si no existen para cada idioma de audio if not os.path.isfile(temp + filename): plugintools.log("Creando archivo... temp/"+filename) backup_serie = open(temp + filename, "a") backup_serie.seek(0) title = parser_title(title_fixed) #backup_serie.write('#EXTM3U,view:tvshows\n\n') # Fijamos modo de vista para la lista de películas backup_serie.write('#EXTINF:-1,'+title+',tvg-logo="'+thumbnail+'",'+'plot="'+plot+'"\n') backup_serie.write('#multilink\n') backup_serie.close() bers_sy2(title, title_bers, page_url, thumbnail, fanart, filename)
def bers_sy1(plot, title_fixed, title, title_serie, title_bers, page_url, thumbnail, fanart, source_web): plugintools.log('[%s %s] Creando archivos BERS... %s' % (addonName, addonVersion, title)) params = plugintools.get_params() show = params.get( "series_id") # Obtenemos modo de vista del usuario para series TV plugintools.modo_vista(show) plugintools.log("title_fixed= " + title_fixed) plugintools.log("title= " + title) plugintools.log("title_serie= " + title_serie) title_fixed = title_serie + " " + title_fixed filename = parser_title(title_fixed) + ".m3u" plugintools.log("page_url= " + page_url) # Vamos a crear los archivos si no existen para cada idioma de audio if not os.path.isfile(temp + filename): plugintools.log("Creando archivo... temp/" + filename) backup_serie = open(temp + filename, "a") backup_serie.seek(0) title = parser_title(title_fixed) #backup_serie.write('#EXTM3U,view:tvshows\n\n') # Fijamos modo de vista para la lista de películas backup_serie.write('#EXTINF:-1,' + title + ',tvg-logo="' + thumbnail + '",' + 'plot="' + plot + '"\n') backup_serie.write('#multilink\n') backup_serie.close() bers_sy2(title, title_bers, page_url, thumbnail, fanart, filename)
def gethttp_referer_headers(url, referer, show): plugintools.log("beta.1-0.3.0.gethttp_referer_headers ") show = plugintools.get_setting( "series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = "tvshows" elif show == "1": show = "seasons" elif show == "2": show = "fanart" elif show == "3": show = "list" elif show == "4": show = "thumbnail" elif show == "5": show = "movies" elif show == "6": show = "tvshows" elif show == "7": show = "episodes" plugintools.log("show= " + show) plugintools.modo_vista(show) request_headers = [] request_headers.append([ "User-Agent", "Mozilla/5.0 (Windows NT 6.2; Win64; x64; rv:16.0.1) Gecko/20121011 Firefox/16.0.1" ]) request_headers.append(["Referer", referer]) body, response_headers = plugintools.read_body_and_headers( url, headers=request_headers) print response_headers return body
def monova0_bum(params): plugintools.log('[%s %s] [BUM+] Monova... %s' % (addonName, addonVersion, repr(params))) thumbnail = 'http://upload.wikimedia.org/wikipedia/en/f/f4/Monova.jpg' fanart = 'http://www.gadgethelpline.com/wp-content/uploads/2013/10/Digital-Piracy.png' show = 'list' plugintools.modo_vista(show) try: texto = ""; texto='the strain spanish' texto = plugintools.keyboard_input(texto) plugintools.set_setting("alluc_search",texto) params["plot"]=texto texto = texto.lower() if texto == "": errormsg = plugintools.message("PalcoTV","Por favor, introduzca el término a buscar") #return errormsg else: texto = texto.lower().strip() texto = texto.replace(" ", "+") # https://isohunt.to/torrents/?ihq=the+strain+spanish url = 'https://www.monova.org/search.php?sort=5&term='+texto+'&verified=1' params["url"]=url url = params.get("url") referer = 'https://monova.org' monova1_bum(params) except: pass
def getotherhost(url,show): plugintools.log("GetlinkMu "+url) # pendiente de crear función getotherlinkmu para servidores no conocidos (hay que extraer url) show = plugintools.get_setting("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = "tvshows" elif show == "1": show = "seasons" elif show == "2": show = "fanart" elif show == "3": show = "list" elif show == "4": show = "thumbnail" elif show == "5": show = "movies" elif show == "6": show = "tvshows" elif show == "7": show = "episodes" plugintools.log("show= "+show) plugintools.modo_vista(show) data = scrapertools.get_header_from_response(url, header_to_get="location") plugintools.log("data= "+data) data = data.split(" ") url = data[0].strip() plugintools.log("url final a devolver= "+url) return url plugintools.log("show= "+show) plugintools.modo_vista(show)
def isohunt1_bum(params): plugintools.log('[%s %s] [BUM+] Isohunt results... %s' % (addonName, addonVersion, repr(params))) thumbnail = 'http://www.userlogos.org/files/logos/dfordesmond/isohunt%201.png' fanart = 'http://2.bp.blogspot.com/_NP40rzexJsc/TMGWrixybJI/AAAAAAAAHCU/ij1--_DQEZo/s1600/Keep_Seeding____by_Carudo.jpg' show = 'list' plugintools.modo_vista(show) #plugintools.add_item(action="", title= '[COLOR blue][B]Iso[/COLOR][COLOR lightblue][I]Hunt[/I][/COLOR] [/B][COLOR lightyellow][I]By Juarrox[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) url = params.get("url") referer = 'https://isohunt.to/' data = gethttp_referer_headers(url,referer) #Todo: Añadir modo de vista (show) #plugintools.log("data= "+data) matches = plugintools.find_multiple_matches(data, '<tr data-key="(.*?)</td></tr>') for entry in matches: plugintools.log("entry= "+entry) page_url = plugintools.find_single_match(entry, '<a href="([^"]+)') page_url = 'https://isohunt.to'+page_url title_url = plugintools.find_single_match(entry, '<span>(.*?)</span>') plugintools.log("title_url= "+title_url) plugintools.log("page_url= "+page_url) size = plugintools.find_single_match(entry, '<td class="size-row">(.*?)</td>') plugintools.log("size= "+size) seeds = plugintools.find_single_match(entry, '<td class=" sy">(.*?)</td>') leechs = '?' plugintools.log("seeds= "+seeds) category = plugintools.find_single_match(entry, 'title="([^"]+)') plugintools.log("category= "+category) if entry.find("Verified Torrent") >= 0: verified = '[COLOR lightgreen][I][Verified][/I][/COLOR]' plugintools.log("verified yes") plugintools.add_item(action="isohunt2_bum", title= '[COLOR gold][I]['+seeds+'/'+leechs+'][/I][/COLOR] [COLOR white] '+title_url+' [/COLOR] [COLOR lightyellow][I]['+size + '] [Isohunt][/I][/COLOR]', url = page_url , thumbnail = thumbnail, fanart = fanart, folder = False, isPlayable = True)
def documania2(params): plugintools.log("[%s %s] documania1 %s " % (addonName, addonVersion, repr(params))) plugintools.modo_vista("tvshows") datamovie = {} # http://www.documaniatv.com/ajax.php?p=video&do=getplayer&vid=bba54697f&aid=3&player=detail # http://www.documaniatv.com/arte-y-cine/ciencia-ficcion-y-paranoia-video_3f443717c.html # http://www.documaniatv.com/arte-y-cine/la-noche-tematica-ciudadano-welles-2-la-guerra-de-los-mundos-video_eb00e6a6a.html url = params.get("url") plugintools.log("url= " + url) url = url.split("video_") id = url[1] id = id.replace(".html", "") print id offer_php = 'http://www.documaniatv.com/ajax.php?p=video&do=getplayer&vid=' + id + '&aid=2&player=detail' print offer_php ref = 'http://www.documaniatv.com/' body = gethttp_referer_headers(offer_php, ref) plugintools.modo_vista("tvshows") url = plugintools.find_single_match(body, '<iframe src="([^"]+)') url = url.replace("embed-", "").replace(".html", "").strip() print url play_url(url)
def lista_letra(params): plugintools.log('[%s %s] lista_letra %s' % (addonName, addonVersion, repr(params))) show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show == "": show = params.get("page") if show == "": show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) url = params.get("url") url = 'http://www.seriesyonkis.sx/'+url referer = 'http://www.seriesyonkis.sx/' data = gethttp_referer_headers(url, referer, show) show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = params.get("page") if show is None: show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) #plugintools.log("data= "+data) match_series = plugintools.find_single_match(data, '<div class="covers-box">(.*?)<div id="sidebar-section">') plugintools.log("listado= "+match_series) # Paginador de series por letra (botón "siguiente") paginador_next(data) # Listado de series lista_series(match_series)
def monova0_bum(params): plugintools.log('[%s %s] [BUM+] Monova... %s' % (addonName, addonVersion, repr(params))) thumbnail = 'http://upload.wikimedia.org/wikipedia/en/f/f4/Monova.jpg' fanart = 'http://www.gadgethelpline.com/wp-content/uploads/2013/10/Digital-Piracy.png' show = 'list' plugintools.modo_vista(show) try: texto = "" texto = 'the strain spanish' texto = plugintools.keyboard_input(texto) plugintools.set_setting("alluc_search", texto) params["plot"] = texto texto = texto.lower() if texto == "": errormsg = plugintools.message( "Arena+", "Por favor, introduzca el término a buscar") #return errormsg else: texto = texto.lower().strip() texto = texto.replace(" ", "+") # https://isohunt.to/torrents/?ihq=the+strain+spanish url = 'https://www.monova.org/search.php?sort=5&term=' + texto + '&verified=1' params["url"] = url url = params.get("url") referer = 'https://monova.org' monova1_bum(params) except: pass
def lista_capis(params): plugintools.log('[%s %s] lista_capis %s' % (addonName, addonVersion, repr(params))) show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= "+show) thumbnail = params.get("thumbnail") if thumbnail == "": thumbnail = 'http://m1.paperblog.com/i/249/2490697/seriesflv-mejor-alternativa-series-yonkis-L-2whffw.jpeg' fanart = 'http://www.nikopik.com/wp-content/uploads/2011/10/S%C3%A9ries-TV.jpg' sinopsis = params.get("plot") datamovie = {} datamovie["Plot"]=sinopsis url = params.get("url") referer = 'http://www.seriesflv.net/' data = gethttp_referer_headers(url,referer,show) # Carátula de la serie cover = plugintools.find_single_match(data, '<div class="portada">(.*?)</div>') thumbnail = plugintools.find_single_match(cover, 'src="([^"]+)') matches = plugintools.find_multiple_matches(data, '<th class="sape">Capitulos</th>(.*?)</table>') for entry in matches: capis= plugintools.find_multiple_matches(entry, '<td class="sape">(.*?)</td>') for entry in capis: title_capi = plugintools.find_single_match(entry, 'class="color4">(.*?)</a>') url_capi = plugintools.find_single_match(entry, '<a href="([^"]+)') plugintools.add_item(action="chapter_urls", title= title_capi, url= url_capi, info_labels = datamovie , page = show , extra = show , thumbnail = thumbnail , fanart = fanart , folder = True, isPlayable = False)
def getlinkflv(url,show): plugintools.modo_vista(show) plugintools.log("show= "+show) data = gethttp_referer_headers(url,referer,show) #plugintools.log("data= "+data) url = plugintools.find_single_match(data, '<a id="continue" href="([^"]+)"') return url
def getotherhost(url, show): plugintools.log( "GetlinkMu " + url ) # pendiente de crear función getotherlinkmu para servidores no conocidos (hay que extraer url) show = plugintools.get_setting( "series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = "tvshows" elif show == "1": show = "seasons" elif show == "2": show = "fanart" elif show == "3": show = "list" elif show == "4": show = "thumbnail" elif show == "5": show = "movies" elif show == "6": show = "tvshows" elif show == "7": show = "episodes" plugintools.log("show= " + show) plugintools.modo_vista(show) data = scrapertools.get_header_from_response(url, header_to_get="location") plugintools.log("data= " + data) data = data.split(" ") url = data[0].strip() plugintools.log("url final a devolver= " + url) return url plugintools.log("show= " + show) plugintools.modo_vista(show)
def GetSerieChapters(params): #plugintools.log("[%s %s] Seriesadicto: getseriechapters() %s" % (addonName, addonVersion, repr(params))) season = params.get("season") datamovie = {} datamovie["Plot"] = params.get("plot") data = plugintools.read(params.get("url")) show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = params.get("page") if show is None: show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) season = plugintools.find_multiple_matches(data, season + '(.*?)</table>') season = season[0] for entry in season: url_cap = plugintools.find_multiple_matches(season, '<a href=\"/capitulo(.*?)\" class=\"color4\"') title = plugintools.find_multiple_matches(season, 'class=\"color4\">(.*?)</a>') num_items = len(url_cap) i = 1 while i <= num_items: url_cap_fixed = 'http://seriesadicto.com/capitulo/' + url_cap[i-1] title_fixed = title[i-1] fanart = "http://socialgeek.co/wp-content/uploads/2013/06/series-TV-Collage-television-10056729-2560-1600.jpg" plugintools.add_item(action="seriesadicto4", title= title_fixed, url = url_cap_fixed, thumbnail = params.get("thumbnail") , extra = str(i) , info_labels = datamovie , page = show , plot = datamovie["Plot"] , fanart = fanart, folder = True, isPlayable = False) i = i + 1
def isohunt0_bum(params): plugintools.log('[%s %s] [BUM+] Isohunt... %s' % (addonName, addonVersion, repr(params))) thumbnail = 'http://www.userlogos.org/files/logos/dfordesmond/isohunt%201.png' fanart = 'http://2.bp.blogspot.com/_NP40rzexJsc/TMGWrixybJI/AAAAAAAAHCU/ij1--_DQEZo/s1600/Keep_Seeding____by_Carudo.jpg' show = 'list' plugintools.modo_vista(show) try: texto = ""; texto='riddick' texto = plugintools.keyboard_input(texto) plugintools.set_setting("alluc_search",texto) params["plot"]=texto texto = texto.lower() if texto == "": errormsg = plugintools.message("PalcoTV","Por favor, introduzca el canal a buscar") #return errormsg else: texto = texto.lower().strip() texto = texto.replace(" ", "+") # https://isohunt.to/torrents/?ihq=the+strain+spanish url = 'https://isohunt.to/torrents/?ihq='+texto+'&Torrent_sort=seeders.desc' params["url"]=url url = params.get("url") referer = 'https://isohunt.to' isohunt1_bum(params) except: pass
def bers_sy4(filename, title_serie): plugintools.log('[%s %s] Guardando multilink en %s...' % (addonName, addonVersion, title_serie)) params = plugintools.get_params() show = params.get( "series_id") # Obtenemos modo de vista del usuario para series TV plugintools.modo_vista(show) filename_serie = parser_title(title_serie) + '.m3u' m3u_cap = open(temp + filename, "r") m3u_cap.seek(0) data = m3u_cap.read() if os.path.exists(filename_serie): plugintools.log("Creando archivo... temp/" + filename_serie) m3u_serie = open(temp + filename_serie, "a") m3u_serie.seek(0) m3u_serie.write( '#EXTM3U,view:tvshows\n\n') # Fijamos modo de vista para el BERS m3u_serie.write(data + '\n') else: m3u_serie = open(temp + filename_serie, "a") m3u_serie.write(data + '\n') m3u_cap.close() m3u_serie.close()
def getlinkmu(params): loginmu() url = params.get("url") show = plugintools.get_setting("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = "tvshows" elif show == "1": show = "seasons" elif show == "2": show = "fanart" elif show == "3": show = "list" elif show == "4": show = "thumbnail" elif show == "5": show = "movies" elif show == "6": show = "tvshows" elif show == "7": show = "episodes" params["page"] = show plugintools.log("show= " + show) plugintools.modo_vista(show) # Iniciamos petición de URL que contiene enlaces al capítulo... data = scrapertools.get_header_from_response(url, header_to_get="location") plugintools.log("data= " + data) data = data.split(" ") url = data[0].strip() plugintools.log("url final= " + url) plugintools.log("url= " + url) from resources.tools.resolvers import * if url.find("allmyvideos") >= 0: plugintools.get_params() url = url.replace("http://allmyvideos.net", "http://www.allmyvideos.net").strip() params["url"] = url allmyvideos(params) elif url.find("streamcloud") >= 0: plugintools.get_params() params["url"] = url streamcloud(params) elif url.find("nowvideo.sx") >= 0: plugintools.get_params() url = url.replace("http://nowvideo.sx", "http://www.nowvideo.sx").strip() params["url"] = url nowvideo(params) elif url.find("vidspot") >= 0: plugintools.get_params() url = url.replace("http://vidspot.net", "http://www.vidpot.net").strip() params["url"] = url vidspot(params) elif url.find("playedto") >= 0: plugintools.get_params() params["url"] = url playedto(params) plugintools.log("show= " + show) plugintools.modo_vista(show)
def lista_series(params): show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= " + show) url = params.get("url") plugintools.log("url= " + url) referer = 'http://www.seriesflv.net/' data = gethttp_referer_headers(url, referer, show) matches = plugintools.find_single_match( data, '<ul id="list_series_letras"(.*?)</ul>') series = plugintools.find_multiple_matches(matches, '<li class=(.*?)</li>') for entry in series: title_serie = plugintools.find_single_match(entry, 'title="([^"]+)') title_serie = title_serie.replace("Online HD", "") plugintools.log("title_serie= " + title_serie) url_serie = plugintools.find_single_match(entry, 'href="([^"]+)') plugintools.log("url_serie= " + url_serie) plugintools.add_item(action="lista_capis", title=title_serie, url=url_serie, thumbnail=params.get("thumbnail"), fanart=fanart, folder=True, isPlayable=False)
def play_url(url): plugintools.log("[PalcoTV-0.3.0].play " + url) params = plugintools.get_params() show = params.get("page") if show == "": show = "list" plugintools.modo_vista(show) # Notificación de inicio de resolver en caso de enlace RTMP url = url.strip() if url.startswith("http") == True: if url.find("allmyvideos") >= 0: params = plugintools.get_params() params["url"] = url allmyvideos(params) elif url.find("streamcloud") >= 0: params["url"] = url params["title"] = title params = plugintools.get_params() streamcloud(params) elif url.find("vidspot") >= 0: params = plugintools.get_params() params["url"] = url vidspot(params) elif url.find("played.to") >= 0: params = plugintools.get_params() params["url"] = url playedto(params) elif url.find("vk.com") >= 0: params = plugintools.get_params() params["url"] = url vk(params) elif url.find("nowvideo") >= 0: params = plugintools.get_params() params["url"] = url nowvideo(params) elif url.find("tumi") >= 0: params = plugintools.get_params() params["url"] = url tumi(params) elif url.find("streamin.to") >= 0: params = plugintools.get_params() params["url"] = url streaminto(params) elif url.find("veehd") >= 0: params = plugintools.get_params() params["url"] = url veehd(params) else: url = url.strip() plugintools.play_resolved_url(url) elif url.startswith("rtp") >= 0: # Control para enlaces de Movistar TV plugintools.play_resolved_url(url) else: plugintools.play_resolved_url(url)
def play_url(url): plugintools.log("[PalcoTV-0.3.0].play "+url) params = plugintools.get_params() show = params.get("page") if show == "": show = "list" plugintools.modo_vista(show) # Notificación de inicio de resolver en caso de enlace RTMP url = url.strip() if url.startswith("http") == True: if url.find("allmyvideos") >= 0 : params = plugintools.get_params() params["url"]=url allmyvideos(params) elif url.find("streamcloud") >= 0 : params["url"]=url params["title"]=title params = plugintools.get_params() streamcloud(params) elif url.find("vidspot") >= 0 : params = plugintools.get_params() params["url"]=url vidspot(params) elif url.find("played.to") >= 0 : params = plugintools.get_params() params["url"]=url playedto(params) elif url.find("vk.com") >= 0 : params = plugintools.get_params() params["url"]=url vk(params) elif url.find("nowvideo") >= 0 : params = plugintools.get_params() params["url"]=url nowvideo(params) elif url.find("tumi") >= 0 : params = plugintools.get_params() params["url"]=url tumi(params) elif url.find("streamin.to") >= 0 : params = plugintools.get_params() params["url"]=url streaminto(params) elif url.find("veehd") >= 0 : params = plugintools.get_params() params["url"]=url veehd(params) else: url = url.strip() plugintools.play_resolved_url(url) elif url.startswith("rtp") >= 0: # Control para enlaces de Movistar TV plugintools.play_resolved_url(url) else: plugintools.play_resolved_url(url)
def getlink_seriesblanco(params): plugintools.log("GetLink for SeriesBlanco.com "+repr(params)) show = params.get("page") plugintools.modo_vista(show) url_final = params.get("url") if url_final.find("allmyvideos") >= 0: params["url"]=url_final allmyvideos(params) elif url_final.find("vidspot") >= 0: params["url"]=url_final vidspot(params) elif url_final.find("played.to") >= 0: params["url"]=url_final playedto(params) elif url_final.find("streamin.to") >= 0: params["url"]=url_final streaminto(params) elif url_final.find("streamcloud") >= 0: params["url"]=url_final streamcloud(params) elif url_final.find("nowvideo.sx") >= 0: params["url"]=url_final nowvideo(params) elif url_final.find("vk") >= 0: params["url"]=url_final vk(params) elif url_final.find("veehd") >= 0: params["url"]=url_final veehd(params) if url_final.find("videobam") >= 0: params["url"]=url_final videobam(params) elif url_final.find("novamov") >= 0: params["url"]=url_final novamov(params) elif url_final.find("moevideos") >= 0: params["url"]=url_final moevideos(params) elif url_final.find("gamovideo") >= 0: params["url"]=url_final gamovideo(params) elif url_final.find("powvideo") >= 0: params["url"]=url_final powvideo(params) elif url_final.find("mail.ru") >= 0: params["url"]=url_final mailru(params) elif url_final.find("netu") >= 0: params["url"]=url_final netu(params) elif url_final.find("tumi.tv") >= 0: params["url"]=url_final tumi(params) plugintools.modo_vista(show)
def getlinkflv(url, show): plugintools.modo_vista(show) plugintools.log("show= " + show) data = gethttp_referer_headers(url, referer, show) #plugintools.log("data= "+data) url = plugintools.find_single_match(data, '<a id="continue" href="([^"]+)"') return url
def gethttp_referer_headers(url,referer,show): plugintools.modo_vista(show) request_headers=[] request_headers.append(["User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31"]) request_headers.append(["Referer", referer]) body,response_headers = plugintools.read_body_and_headers(url, headers=request_headers) plugintools.modo_vista(show) return body
def getlink_seriesblanco(params): plugintools.log("GetLink for SeriesBlanco.com " + repr(params)) show = params.get("page") plugintools.modo_vista(show) url_final = params.get("url") if url_final.find("allmyvideos") >= 0: params["url"] = url_final allmyvideos(params) elif url_final.find("vidspot") >= 0: params["url"] = url_final vidspot(params) elif url_final.find("played.to") >= 0: params["url"] = url_final playedto(params) elif url_final.find("streamin.to") >= 0: params["url"] = url_final streaminto(params) elif url_final.find("streamcloud") >= 0: params["url"] = url_final streamcloud(params) elif url_final.find("nowvideo.sx") >= 0: params["url"] = url_final nowvideo(params) elif url_final.find("vk") >= 0: params["url"] = url_final vk(params) elif url_final.find("veehd") >= 0: params["url"] = url_final veehd(params) if url_final.find("videobam") >= 0: params["url"] = url_final videobam(params) elif url_final.find("novamov") >= 0: params["url"] = url_final novamov(params) elif url_final.find("moevideos") >= 0: params["url"] = url_final moevideos(params) elif url_final.find("gamovideo") >= 0: params["url"] = url_final gamovideo(params) elif url_final.find("powvideo") >= 0: params["url"] = url_final powvideo(params) elif url_final.find("mail.ru") >= 0: params["url"] = url_final mailru(params) elif url_final.find("netu") >= 0: params["url"] = url_final netu(params) elif url_final.find("tumi.tv") >= 0: params["url"] = url_final tumi(params) plugintools.modo_vista(show)
def kickass1_bum(params): plugintools.log('[%s %s] [BUM+] Kickass results... %s' % (addonName, addonVersion, repr(params))) bumfile = temp + 'bum.dat' controlbum = open(bumfile, "a") show = 'biglist' plugintools.modo_vista(show) #plugintools.add_item(action="", title= '[COLOR green][B]KickAss[/COLOR][COLOR gold][I] Torrents[/I][/COLOR] [/B][COLOR lightyellow][I]By Juarrox[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) #plugintools.add_item(action="", title= '[COLOR red][B]Título [/COLOR][COLOR white] (Tamaño) [/COLOR] [/B][COLOR lightyellow][I](Semillas)[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) url = params.get("url") referer = 'https://kat.cr/' data = gethttp_referer_headers(url,referer) #plugintools.log("data= "+data) thumbnail = plugintools.find_single_match(data, '<img src="([^"]+)') thumbnail = 'http:'+thumbnail #plugintools.log("thumbnail= "+thumbnail) match_num_results = plugintools.find_single_match(data, '<div><h2>(.*?)</a></h2>') num_results = plugintools.find_single_match(match_num_results, '<span>(.*?)</span>') num_results = num_results.replace("from", "de").replace("results", "Resultados:").strip() #plugintools.log("num_results= "+num_results) results = plugintools.find_single_match(data, '<table width="100%" cellspacing="0" cellpadding="0" class="doublecelltable" id="mainSearchTable">(.*?)</table>') #plugintools.log("results_table= "+results) matches = plugintools.find_multiple_matches(results, '<div class="torrentname">(.*?)<a data-download') for entry in matches: #plugintools.log("entry= "+entry) match_title = plugintools.find_single_match(entry, 'class="cellMainLink">(.*?)</a>') match_title = match_title.replace("</strong>", "").replace("<strong>", "").replace('<strong class="red">', "").strip() #plugintools.log("match_title= "+match_title) magnet_match = 'magnet:'+plugintools.find_single_match(entry, 'magnet:([^"]+)') plugintools.log("magnet_match= "+magnet_match) magnet_match = urllib.quote_plus(magnet_match).strip() addon_magnet = plugintools.get_setting("addon_magnet") if addon_magnet == "0": # Stream (por defecto) magnet_url = 'plugin://plugin.video.stream/play/'+magnet_match magnet_url = magnet_url.strip() elif addon_magnet == "1": # Pulsar magnet_url = 'plugin://plugin.video.pulsar/play?uri=' + magnet_match magnet_url = magnet_url.strip() elif addon_magnet == "2": # KMediaTorrent magnet_url = 'plugin://plugin.video.kmediatorrent/play/' + magnet_match magnet_url = magnet_url.strip() plugintools.log("magnet_url= "+magnet_url) size = plugintools.find_single_match(entry, 'class=\"nobr center\">(.*?)</td>') size = size.replace("<span>","").replace("</span>","").strip() #plugintools.log("size= "+size) seeds = plugintools.find_single_match(entry, '<td class="green center">(.*?)</td>').replace(",", "").replace(".", "") leechs = plugintools.find_single_match(entry, '<td class="red lasttd center">(.*?)</td>') #plugintools.log("seeds= "+seeds) #plugintools.log("leechs= "+leechs) title_fixed='[COLOR gold][I]['+seeds+'/'+leechs+'][/I][/COLOR] [COLOR white] '+match_title+' [I]['+size + '] [/COLOR][COLOR orange][Kickass][/I][/COLOR]' #plugintools.add_item(action="play", title=title_fixed, url=magnet_url, thumbnail = thumbnail , fanart = fanart , show = show , extra = show , folder=False, isPlayable=True) controlbum.write('Title: '+title_fixed+'\nURL: '+magnet_url+'\nThumbnail: '+thumbnail+'\nSeeds: '+seeds+'\nSize: '+size+'\n\n') controlbum.close()
def gethttp_referer_headers(url,referer,show): plugintools.modo_vista(show) request_headers=[] request_headers.append(["User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31"]) request_headers.append(["Referer", referer]) request_headers.append(["X-Requested-With", "XMLHttpRequest"]) request_headers.append(["Cookie:","__utma=253162379.286456173.1418323503.1421078750.1422185754.16; __utmz=253162379.1421070671.14.3.utmcsr=google|utmccn=(organic)|utmcmd=organic|utmctr=http%3A%2F%2Fwww.seriesflv.net%2Fserie%2Fhora-de-aventuras.html; __cfduid=daeed6a2aacaffab2433869fd863162821419890996; __utmb=253162379.4.10.1422185754; __utmc=253162379; __utmt=1"]) body,response_headers = plugintools.read_body_and_headers(url, headers=request_headers);print response_headers return body
def parse_url(url, show): plugintools.modo_vista(show) if url != "": url = url.strip() url = url.replace("rtmp://$OPT:rtmp-raw=", "") return url else: plugintools.log("error en url= ") # Mostrar diálogo de error al parsear url (por no existir, por ejemplo)
def listado_seriesflv(params): show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) letra = "a" url = 'http://www.seriesflv.net/ajax/lista.php?grupo_no=0&type=series&order=b' referer = 'hhttp://www.seriesflv.net/series/' body = gethttp_referer_headers(url,referer,show)
def categorias_flv(data, show): plugintools.log("[Arena+ 0.3.4] SeriesFLV Categorias ") plugintools.modo_vista(show) plugintools.log("show= " + show) params = plugintools.get_params() thumbnail = params.get("thumbnail") if thumbnail == "": thumbnail = 'http://m1.paperblog.com/i/249/2490697/seriesflv-mejor-alternativa-series-yonkis-L-2whffw.jpeg' fanart = 'http://www.nikopik.com/wp-content/uploads/2011/10/S%C3%A9ries-TV.jpg' sinopsis = params.get("plot") datamovie = {} datamovie["Plot"] = sinopsis sections = plugintools.find_single_match( data, '<div class="lang over font2 bold">(.*?)</div>') plugintools.log("sections= " + sections) tipo_selected = plugintools.find_single_match(sections, 'class="select">(.*?)</a>') plugintools.add_item(action="listado_seriesflv", title='[COLOR orange]Listado completo[/COLOR]', url="http://www.seriesflv.net/series/", extra=data, info_labels=datamovie, page=show, thumbnail=thumbnail, fanart=fanart, folder=True, isPlayable=False) plugintools.add_item(action="lista_chapters", title='[COLOR orange]' + tipo_selected + '[/COLOR]', url="", extra=data, info_labels=datamovie, page=show, thumbnail=thumbnail, fanart=fanart, folder=True, isPlayable=False) tipos = plugintools.find_multiple_matches(sections, ';">(.*?)</a>') for entry in tipos: plugintools.add_item(action="lista_chapters", title='[COLOR orange]' + entry + '[/COLOR]', url="", thumbnail=thumbnail, extra=data, plot=datamovie["Plot"], info_labels=datamovie, page=show, fanart=fanart, folder=True, isPlayable=False)
def loginmu(): show = plugintools.get_setting("series_id") if show is "6": show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) # Iniciamos login... url = 'http://series.mu/login/' post = 'user='******'&pass='+plugintools.get_setting("seriesmu_pwd") data = scrapertools.cache_page(url, post=post)
def parse_url(url, show): plugintools.modo_vista(show) if url != "": url = url.strip() url = url.replace("rtmp://$OPT:rtmp-raw=", "") return url else: plugintools.log( "error en url= " ) # Mostrar diálogo de error al parsear url (por no existir, por ejemplo)
def loginmu(): show = plugintools.get_setting("series_id") if show is "6": show = "tvshows" plugintools.log("show= " + show) plugintools.modo_vista(show) # Iniciamos login... url = 'http://series.mu/login/' post = 'user='******'&pass=' + plugintools.get_setting("seriesmu_pwd") data = scrapertools.cache_page(url, post=post)
def gethttp_referer_headers(url,referer,show): #plugintools.log('[%s %s] gethttp_referer_headers % (addonName, addonVersion)) plugintools.log("show= "+show) plugintools.modo_vista(show) request_headers=[] request_headers.append(["User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31"]) request_headers.append(["Referer", referer]) body,response_headers = plugintools.read_body_and_headers(url, headers=request_headers) plugintools.modo_vista(show) return body
def gethttp_referer_headers(url,referer,show): params = plugintools.get_params() show_default = params.get("series_id") # Obtenemos modo de vista del usuario para series TV #plugintools.modo_vista(show) request_headers=[] request_headers.append(["User-Agent","Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31"]) request_headers.append(["Referer", referer]) body,response_headers = plugintools.read_body_and_headers(url, headers=request_headers) plugintools.modo_vista(show) return body
def gethttp_referer_headers(url, ref): plugintools.modo_vista("tvshows") request_headers = [] request_headers.append([ "User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31" ]) request_headers.append(["Accept-Charset", "utf-8"]) request_headers.append(["Referer", ref]) body, response_headers = plugintools.read_body_and_headers( url, headers=request_headers) #plugintools.log("body= "+body) return body
def bers_sy2(title, title_bers, page_url, thumbnail, fanart, filename): plugintools.log('[%s %s] Guardando URL...%s ' % (addonName, addonVersion, title)) params = plugintools.get_params() show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV plugintools.modo_vista(show) url = params.get("url") backup_serie = open(temp + filename, "a") # Abrimos el archivo en modo escritura url = bers_sy3(page_url) filename_fixed = title backup_serie.write(title_bers+','+url+'\n') backup_serie.close() plugintools.log('[%s %s] BERS: %s , %s' % (addonName, addonVersion, title, page_url))
def seriesflv(params): plugintools.log("[beta.1 0.3.0].SeriesFLV") show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= " + show) url = params.get("url") datamovie = {} datamovie["Plot"] = params.get("plot") # Sinopsis # Vamos a capturar las categorías de capítulos: Sub, esp, lat y en (original, en inglés) plugintools.add_item(action="lista_chapters", title='[COLOR orange]Subtitulada[/COLOR]', url=url, thumbnail=thumbnail, info_labels=datamovie, page=show, fanart=fanart, folder=True, isPlayable=False) plugintools.add_item(action="lista_chapters", title='[COLOR orange]Español[/COLOR]', url=url, thumbnail=thumbnail, info_labels=datamovie, page=show, fanart=fanart, folder=True, isPlayable=False) plugintools.add_item(action="lista_chapters", title='[COLOR orange]Latino[/COLOR]', url=url, thumbnail=thumbnail, info_labels=datamovie, page=show, fanart=fanart, folder=True, isPlayable=False) plugintools.add_item(action="lista_chapters", title='[COLOR orange]V.O.[/COLOR]', url=url, thumbnail=thumbnail, info_labels=datamovie, page=show, fanart=fanart, folder=True, isPlayable=False)
def listado_seriesflv(params): plugintools.log("Arena+.[listado_seriesflv] " + repr(params)) show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= " + show) letra = "a" url = 'http://www.seriesflv.net/ajax/lista.php?grupo_no=0&type=series&order=b' referer = 'hhttp://www.seriesflv.net/series/' body = gethttp_referer_headers(url, referer, show) plugintools.log("body= " + body)
def listado_seriesflv(params): plugintools.log('[%s %s] listado_seriesflv %s' % (addonName, addonVersion, repr(params))) show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= "+show) letra = "a" url = 'http://www.seriesflv.net/ajax/lista.php?grupo_no=0&type=series&order=b' referer = 'hhttp://www.seriesflv.net/series/' body = gethttp_referer_headers(url,referer,show) plugintools.log("body= "+body)
def kickass1_bum(params): plugintools.log('[%s %s] [BUM+] Kickass results... %s' % (addonName, addonVersion, repr(params))) show = 'list' plugintools.modo_vista(show) #plugintools.add_item(action="", title= '[COLOR green][B]KickAss[/COLOR][COLOR gold][I] Torrents[/I][/COLOR] [/B][COLOR lightyellow][I]By Juarrox[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) #plugintools.add_item(action="", title= '[COLOR red][B]Título [/COLOR][COLOR white] (Tamaño) [/COLOR] [/B][COLOR lightyellow][I](Semillas)[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) url = params.get("url") referer = 'https://kickass.to/' data = gethttp_referer_headers(url,referer) logo = plugintools.find_single_match(data, '<img src="([^"]+)') logo = 'http:'+logo plugintools.log("logo= "+logo) match_num_results = plugintools.find_single_match(data, '<div><h2>(.*?)</a></h2>') num_results = plugintools.find_single_match(match_num_results, '<span>(.*?)</span>') num_results = num_results.replace("from", "de").replace("results", "Resultados:").strip() plugintools.log("num_results= "+num_results) results = plugintools.find_single_match(data, '<table width="100%" cellspacing="0" cellpadding="0" class="doublecelltable" id="mainSearchTable">(.*?)</table>') plugintools.log("results_table= "+results) matches = plugintools.find_multiple_matches(results, '<div class="torrentname">(.*?)<a title="Download torrent file') for entry in matches: plugintools.log("entry= "+entry) match_title = plugintools.find_single_match(entry, 'class="cellMainLink">(.*?)</a>') match_title = match_title.replace("</strong>", "").replace("<strong>", "").replace('<strong class="red">', "").strip() plugintools.log("match_title= "+match_title) magnet_match = plugintools.find_single_match(entry, 'Torrent magnet link" href="([^"]+)') plugintools.log("magnet_match= "+magnet_match) magnet_match = urllib.quote_plus(magnet_match).strip() addon_magnet = plugintools.get_setting("addon_magnet") if addon_magnet == "0": # Stream (por defecto) magnet_url = 'plugin://plugin.video.stream/play/'+magnet_match magnet_url = magnet_url.strip() elif addon_magnet == "1": # Pulsar magnet_url = 'plugin://plugin.video.pulsar/play?uri=' + magnet_match magnet_url = magnet_url.strip() elif addon_magnet == "2": # KMediaTorrent magnet_url = 'plugin://plugin.video.kmediatorrent/play/' + magnet_match magnet_url = magnet_url.strip() plugintools.log("magnet_url= "+magnet_url) size = plugintools.find_single_match(entry, 'class=\"nobr center\">(.*?)</td>') size = size.replace("<span>","").replace("</span>","").strip() plugintools.log("size= "+size) seeds = plugintools.find_single_match(entry, '<td class="green center">(.*?)</td>') leechs = plugintools.find_single_match(entry, '<td class="red lasttd center">(.*?)</td>') plugintools.log("seeds= "+seeds) plugintools.log("leechs= "+leechs) plugintools.add_item(action="play", title='[COLOR gold][I]['+seeds+'/'+leechs+'][/I][/COLOR] [COLOR white] '+match_title+' [/COLOR] [COLOR lightyellow][I]['+size + '] [Kickass][/I][/COLOR]', url=magnet_url, thumbnail = logo , fanart = fanart , show = show , extra = show , folder=False, isPlayable=True)
def serie_capis(params): plugintools.log('[%s %s] serie_capis %s' % (addonName, addonVersion, repr(params))) datamovie={} if params.get("plot") != "": datamovie["Plot"]=params.get("plot") # Cargamos sinopsis de la serie... (si existe) else: datamovie["Plot"]="." show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = params.get("page") if show is None: show = "tvshows" print show plugintools.modo_vista(show) url = params.get("url") referer = 'http://www.seriesyonkis.sx/' data = gethttp_referer_headers(url,referer,show) show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = params.get("page") if show is None: show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) #plugintools.log("data= "+data) #Carátula cover = plugintools.find_single_match(data, '<img src="([^"]+)') match_temporadas = plugintools.find_single_match(data, '<div id="section-content">(.*?)</ul>') temps = plugintools.find_multiple_matches(match_temporadas, '<h3 class="season"(.*?)</li>') for entry in temps: capis = plugintools.find_multiple_matches(entry, '<td class="episode-title">(.*?)</td>') for entri in capis: url_cap = plugintools.find_single_match(entri, '<a href="([^"]+)') url_cap = 'http://www.seriesyonkis.sx'+url_cap plugintools.log("url_cap= "+url_cap) num_cap = plugintools.find_single_match(entri, '<strong>(.*?)</strong>') num_cap = num_cap.strip() plugintools.log("num_cap= "+num_cap) title_cap = plugintools.find_single_match(entri, '</strong>(.*?)</a>') title_cap = title_cap.strip() plugintools.log("title_cap= "+title_cap) title_capi = '[COLOR orange][B]'+num_cap+'[/B][COLOR white]'+title_cap+'[/COLOR]'.strip() title_fixed = num_cap + title_cap title_fixed = title_fixed.strip() plugintools.add_item(action="enlaces_capi", title=title_capi, url = url_cap, thumbnail = cover , plot = datamovie["Plot"], info_labels = datamovie , fanart = fanart, folder = True, page = show, extra = title_fixed , isPlayable = False)
def kickass1_bum(params): plugintools.log('[%s %s].kickass1_bum %s' % (addonName, addonVersion, repr(params))) show = 'biglist' plugintools.modo_vista(show) #plugintools.add_item(action="", title= '[COLOR green][B]KickAss[/COLOR][COLOR gold][I] Torrents[/I][/COLOR] [/B][COLOR lightyellow][I]By Juarrox[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) #plugintools.add_item(action="", title= '[COLOR red][B]Título [/COLOR][COLOR white] (Tamaño) [/COLOR] [/B][COLOR lightyellow][I](Semillas)[/I][/COLOR]', url = "", thumbnail = thumbnail , fanart = fanart, folder = False, isPlayable = False) url = params.get("url") referer = 'https://kickass.to/' data = gethttp_referer_headers(url,referer) logo = plugintools.find_single_match(data, '<img src="([^"]+)') logo = 'http:'+logo plugintools.log("logo= "+logo) match_num_results = plugintools.find_single_match(data, '<div><h2>(.*?)</a></h2>') num_results = plugintools.find_single_match(match_num_results, '<span>(.*?)</span>') num_results = num_results.replace("from", "de").replace("results", "Resultados:").strip() plugintools.log("num_results= "+num_results) results = plugintools.find_single_match(data, '<table width="100%" cellspacing="0" cellpadding="0" class="doublecelltable" id="mainSearchTable">(.*?)</table>') plugintools.log("results_table= "+results) matches = plugintools.find_multiple_matches(results, '<div class="torrentname">(.*?)<a title="Download torrent file') for entry in matches: plugintools.log("entry= "+entry) match_title = plugintools.find_single_match(entry, 'class="cellMainLink">(.*?)</a>') match_title = match_title.replace("</strong>", "").replace("<strong>", "").replace('<strong class="red">', "").strip() plugintools.log("match_title= "+match_title) magnet_match = plugintools.find_single_match(entry, 'Torrent magnet link" href="([^"]+)') plugintools.log("magnet_match= "+magnet_match) magnet_match = urllib.quote_plus(magnet_match).strip() addon_magnet = plugintools.get_setting("addon_magnet") if addon_magnet == "0": # Stream (por defecto) magnet_url = 'plugin://plugin.video.stream/play/'+magnet_match magnet_url = magnet_url.strip() elif addon_magnet == "1": # Pulsar magnet_url = 'plugin://plugin.video.pulsar/play?uri=' + magnet_match magnet_url = magnet_url.strip() elif addon_magnet == "2": # KMediaTorrent magnet_url = 'plugin://plugin.video.kmediatorrent/play/' + magnet_match magnet_url = magnet_url.strip() plugintools.log("magnet_url= "+magnet_url) size = plugintools.find_single_match(entry, 'class=\"nobr center\">(.*?)</td>') size = size.replace("<span>","").replace("</span>","").strip() plugintools.log("size= "+size) seeds = plugintools.find_single_match(entry, '<td class="green center">(.*?)</td>') leechs = plugintools.find_single_match(entry, '<td class="red lasttd center">(.*?)</td>') plugintools.log("seeds= "+seeds) plugintools.log("leechs= "+leechs) plugintools.add_item(action="play", title='[COLOR gold][I]['+seeds+'/'+leechs+'][/I][/COLOR] [COLOR white] '+match_title+' [/COLOR] [COLOR lightyellow][I]['+size + '] [Kickass][/I][/COLOR]', url=magnet_url, thumbnail = logo , fanart = fanart , show = show , extra = show , folder=False, isPlayable=False)
def bum_multiparser(params): plugintools.log('[%s %s] Iniciando BUM+ ... %s' % (addonName, addonVersion, repr(params))) show = 'list' plugintools.modo_vista(show) try: texto = params.get("title") texto = texto.replace("[Multiparser]", "").replace( "[/COLOR]", "").replace("[I]", "").replace("[/I]", "").replace( "[COLOR white]", "").replace("[COLOR lightyellow]", "").strip() texto = texto + ' spanish' plugintools.set_setting("bum_search", texto) params["plot"] = texto texto = texto.lower().strip() texto = texto.replace("á", "a").replace("é", "e").replace( "í", "i").replace("ó", "o").replace("ú", "u").replace("ñ", "n").replace(" ", "+") if texto == "": errormsg = plugintools.message( "Arena+", "Por favor, introduzca el canal a buscar") #return errormsg else: url = 'https://kickass.to/usearch/' + texto + '/' # Kickass params["url"] = url url = params.get("url") referer = 'http://www.kickass.to' kickass1_bum(params) url = 'http://bitsnoop.com/search/all/' + texto + '/c/d/1/' # BitSnoop params["url"] = url url = params.get("url") referer = 'http://www.bitsnoop.com' bitsnoop1_bum(params) url = 'https://isohunt.to/torrents/?ihq=' + texto + '&Torrent_sort=seeders.desc' # Isohunt params["url"] = url url = params.get("url") referer = 'https://isohunt.to' isohunt1_bum(params) url = 'https://www.monova.org/search.php?sort=5&term=' + texto + '&verified=1' # Monova params["url"] = url url = params.get("url") referer = 'https://monova.org' monova1_bum(params) except: pass
def seriesblanco0(params): plugintools.log("[%s %s] SeriesBlanco0 %s" % (addonName, addonVersion, repr(params))) show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= " + show) sinopsis = params.get("plot") datamovie = {} datamovie["Plot"] = sinopsis thumbnail = params.get("thumbnail") if thumbnail == "": thumbnail = "http://seriesblanco.com/imags_estilos/logoblanconavidad2.png" fanart = "http://socialgeek.co/wp-content/uploads/2013/06/series-TV-Collage-television-10056729-2560-1600.jpg" url = params.get("url") referer = url data = gethttp_referer_headers(url, referer, show) # plugintools.log("data= "+data) seasons = plugintools.find_multiple_matches(data, "<h2 style='cursor: hand; cursor: pointer;'><u>(.*?)</table>") for entry in seasons: # plugintools.log("entry= "+entry) title_temp = plugintools.find_single_match(entry, "(.*?)</u></h2>") chapter = plugintools.find_multiple_matches(entry, "<tr><td>(.*?)</td>") for entri in chapter: # plugintools.log("entri= "+entri) url_chapter = plugintools.find_single_match(entri, "<a href='([^']+)") url_chapter = "http://www.seriesblanco.com" + url_chapter title_chapter = plugintools.find_single_match(entri, "'>(.*?)</a>") plugintools.log("title_chapter=" + title_chapter) plugintools.log("url_chapter=" + url_chapter) if title_chapter.find("x00") < 0: plugintools.add_item( action="seriesblanco1", title=title_chapter, url=url_chapter, thumbnail=thumbnail, info_labels=datamovie, extra=show, page=show, plot=sinopsis, fanart=fanart, folder=True, isPlayable=False, )
def seriesflv(params): plugintools.log('[%s %s] SeriesFLV %s' % (addonName, addonVersion, repr(params))) show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= "+show) url = params.get("url") data = gethttp_referer_headers(url, referer, show) plugintools.log("data= "+data) # Vamos a capturar las categorías de capítulos: Sub, esp, lat y en (original, en inglés) categorias_flv(data,show)
def seriecatcher(params): plugintools.log("[Arena+ 0.3.3].seriecatcher "+repr(params)) show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = params.get("page") if show is None: show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) url = params.get("url") data = plugintools.read(url) temp = plugintools.find_multiple_matches(data, '<i class=\"glyphicon\"></i>(.*?)</a>') SelectTemp(params, temp)
def seriecatcher(params): #plugintools.log("[%s %s] Seriesadicto: seriecatcher() %s" % (addonName, addonVersion, repr(params))) show = params.get("series_id") # Obtenemos modo de vista del usuario para series TV if show is None: show = params.get("page") if show is None: show = "tvshows" plugintools.log("show= "+show) plugintools.modo_vista(show) url = params.get("url") data = plugintools.read(url) temp = plugintools.find_multiple_matches(data, '<i class=\"glyphicon\"></i>(.*?)</a>') SelectTemp(params, show, temp)
def lista_capis(params): plugintools.log("[%s %s] Lista capítulos en Seriesflv " % (addonName, addonVersion)) show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= " + show) thumbnail = params.get("thumbnail") if thumbnail == "": thumbnail = 'http://m1.paperblog.com/i/249/2490697/seriesflv-mejor-alternativa-series-yonkis-L-2whffw.jpeg' fanart = 'http://www.nikopik.com/wp-content/uploads/2011/10/S%C3%A9ries-TV.jpg' sinopsis = params.get("plot") datamovie = {} datamovie["Plot"] = sinopsis url = params.get("url") referer = 'http://www.seriesflv.net/' data = gethttp_referer_headers(url, referer, show) # Carátula de la serie cover = plugintools.find_single_match(data, '<div class="portada">(.*?)</div>') thumbnail = plugintools.find_single_match(cover, 'src="([^"]+)') matches = plugintools.find_multiple_matches( data, '<th class="sape">Capitulos</th>(.*?)</table>') for entry in matches: capis = plugintools.find_multiple_matches( entry, '<td class="sape">(.*?)</td>') for entry in capis: title_capi = plugintools.find_single_match( entry, 'class="color4">(.*?)</a>') url_capi = plugintools.find_single_match(entry, '<a href="([^"]+)') plugintools.add_item(action="chapter_urls", title=title_capi, url=url_capi, info_labels=datamovie, plot=datamovie["Plot"], page=show, extra=show, thumbnail=thumbnail, fanart=fanart, folder=True, isPlayable=False)
def seriesflv(params): plugintools.log('[%s %s] SeriesFLV %s' % (addonName, addonVersion, repr(params))) show = plugintools.get_setting("series_id") if show == "": show = "tvshows" plugintools.modo_vista(show) plugintools.log("show= " + show) url = params.get("url") data = gethttp_referer_headers(url, referer, show) plugintools.log("data= " + data) # Vamos a capturar las categorías de capítulos: Sub, esp, lat y en (original, en inglés) categorias_flv(data, show)
def gethttp_referer_headers(url, referer, show): params = plugintools.get_params() show_default = params.get( "series_id") # Obtenemos modo de vista del usuario para series TV #plugintools.modo_vista(show) request_headers = [] request_headers.append([ "User-Agent", "Mozilla/5.0 (Macintosh; Intel Mac OS X 10_8_3) AppleWebKit/537.31 (KHTML, like Gecko) Chrome/26.0.1410.65 Safari/537.31" ]) request_headers.append(["Referer", referer]) body, response_headers = plugintools.read_body_and_headers( url, headers=request_headers) plugintools.modo_vista(show) return body
def bers_sy2(title, title_bers, page_url, thumbnail, fanart, filename): plugintools.log('[%s %s] Guardando URL...%s ' % (addonName, addonVersion, title)) params = plugintools.get_params() show = params.get( "series_id") # Obtenemos modo de vista del usuario para series TV plugintools.modo_vista(show) url = params.get("url") backup_serie = open(temp + filename, "a") # Abrimos el archivo en modo escritura url = bers_sy3(page_url) filename_fixed = title backup_serie.write(title_bers + ',' + url + '\n') backup_serie.close() plugintools.log('[%s %s] BERS: %s , %s' % (addonName, addonVersion, title, page_url))