Correcciones a canales
This commit is contained in:
@@ -319,61 +319,34 @@ def findvideos(item):
|
|||||||
duplicados = []
|
duplicados = []
|
||||||
data = get_source(item.url)
|
data = get_source(item.url)
|
||||||
src = data
|
src = data
|
||||||
patron = 'id=(?:div|player)(\d+)>.*?<iframe src=.*? data-lazy-src=(.*?) marginheight'
|
patron = 'id=(?:div|player)(\d+)>.*?data-lazy-src=(.*?) scrolling'
|
||||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
matches = re.compile(patron, re.DOTALL).findall(data)
|
||||||
|
|
||||||
for option, videoitem in matches:
|
for option, videoitem in matches:
|
||||||
lang = scrapertools.find_single_match(src,
|
lang = scrapertools.find_single_match(src,
|
||||||
'<a href=#(?:div|player)%s.*?>.*?(Doblado|Subtitulado)<\/a>' % option)
|
'<a href=#(?:div|player)%s.*?>.*?(.*?)<\/a>' % option)
|
||||||
|
if 'audio ' in lang.lower():
|
||||||
|
lang=lang.lower().replace('audio ','')
|
||||||
|
lang=lang.capitalize()
|
||||||
|
|
||||||
data = get_source(videoitem)
|
data = get_source(videoitem)
|
||||||
if 'play' in videoitem:
|
video_urls = scrapertools.find_multiple_matches(data, '<li><a href=(.*?)><span')
|
||||||
url = scrapertools.find_single_match(data, '<span>Ver Online<.*?<li><a href=(.*?)><span class=icon>')
|
for video in video_urls:
|
||||||
else:
|
video_data = get_source(video)
|
||||||
url = scrapertools.find_single_match(data, '<iframe src=(.*?) scrolling=')
|
if not 'fastplay' in video:
|
||||||
|
new_url= scrapertools.find_single_match(video_data,'<li><a href=(.*?srt)><span')
|
||||||
|
data_final = get_source(new_url)
|
||||||
|
else:
|
||||||
|
data_final=video_data
|
||||||
|
url = scrapertools.find_single_match(data_final,'iframe src=(.*?) scrolling')
|
||||||
|
quality = item.quality
|
||||||
|
server = servertools.get_server_from_url(url)
|
||||||
|
title = item.contentTitle + ' [%s] [%s]' % (server, lang)
|
||||||
|
if item.quality != '':
|
||||||
|
title = item.contentTitle + ' [%s] [%s] [%s]' % (server, quality, lang)
|
||||||
|
|
||||||
url_list.append([url, lang])
|
if url!='':
|
||||||
|
itemlist.append(item.clone(title=title, url=url, action='play', server=server, language=lang))
|
||||||
for video_url in url_list:
|
|
||||||
language = video_url[1]
|
|
||||||
if 'jw.miradetodo' in video_url[0]:
|
|
||||||
data = get_source('http:' + video_url[0])
|
|
||||||
patron = 'label:.*?(.*?),.*?file:.*?(.*?)&app.*?\}'
|
|
||||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
|
||||||
|
|
||||||
for quality, scrapedurl in matches:
|
|
||||||
quality = quality
|
|
||||||
title = item.contentTitle + ' (%s) %s' % (quality, language)
|
|
||||||
server = 'directo'
|
|
||||||
url = scrapedurl
|
|
||||||
url = url.replace('\/', '/')
|
|
||||||
subtitle = scrapertools.find_single_match(data, "tracks: \[\{file: '.*?linksub=(.*?)',label")
|
|
||||||
if url not in duplicados:
|
|
||||||
itemlist.append(item.clone(title=title,
|
|
||||||
action='play',
|
|
||||||
url=url,
|
|
||||||
quality=quality,
|
|
||||||
server=server,
|
|
||||||
subtitle=subtitle,
|
|
||||||
language=language
|
|
||||||
))
|
|
||||||
duplicados.append(url)
|
|
||||||
elif video_url != '':
|
|
||||||
itemlist.extend(servertools.find_video_items(data=video_url[0]))
|
|
||||||
|
|
||||||
import os
|
|
||||||
for videoitem in itemlist:
|
|
||||||
if videoitem.server != 'directo':
|
|
||||||
|
|
||||||
quality = item.quality
|
|
||||||
title = item.contentTitle + ' (%s) %s' % (videoitem.server, language)
|
|
||||||
if item.quality != '':
|
|
||||||
title = item.contentTitle + ' (%s) %s' % (quality, language)
|
|
||||||
videoitem.title = title
|
|
||||||
videoitem.channel = item.channel
|
|
||||||
|
|
||||||
videoitem.thumbnail = os.path.join(config.get_runtime_path(), "resources", "media", "servers",
|
|
||||||
"server_%s.png" % videoitem.server)
|
|
||||||
videoitem.quality = item.quality
|
|
||||||
|
|
||||||
if item.infoLabels['mediatype'] == 'movie':
|
if item.infoLabels['mediatype'] == 'movie':
|
||||||
if config.get_videolibrary_support() and len(itemlist) > 0 and item.extra != 'findvideos':
|
if config.get_videolibrary_support() and len(itemlist) > 0 and item.extra != 'findvideos':
|
||||||
|
|||||||
@@ -1,30 +0,0 @@
|
|||||||
{
|
|
||||||
"id": "pelisencasa",
|
|
||||||
"name": "PelisEnCasa",
|
|
||||||
"active": true,
|
|
||||||
"adult": false,
|
|
||||||
"language": ["lat"],
|
|
||||||
"thumbnail": "https://s14.postimg.org/iqiq0bxn5/pelisencasa.png",
|
|
||||||
"banner": "https://s18.postimg.org/j775ehbg9/pelisencasa_banner.png",
|
|
||||||
"categories": [
|
|
||||||
"movie"
|
|
||||||
],
|
|
||||||
"settings": [
|
|
||||||
{
|
|
||||||
"id": "include_in_newest_peliculas",
|
|
||||||
"type": "bool",
|
|
||||||
"label": "Incluir en Novedades - Peliculas",
|
|
||||||
"default": true,
|
|
||||||
"enabled": true,
|
|
||||||
"visible": true
|
|
||||||
},
|
|
||||||
{
|
|
||||||
"id": "include_in_newest_infantiles",
|
|
||||||
"type": "bool",
|
|
||||||
"label": "Incluir en Novedades - Infantiles",
|
|
||||||
"default": true,
|
|
||||||
"enabled": true,
|
|
||||||
"visible": true
|
|
||||||
}
|
|
||||||
]
|
|
||||||
}
|
|
||||||
@@ -1,217 +0,0 @@
|
|||||||
# -*- coding: utf-8 -*-
|
|
||||||
|
|
||||||
import re
|
|
||||||
|
|
||||||
from core import httptools
|
|
||||||
from core import scrapertools
|
|
||||||
from core import tmdb
|
|
||||||
from core.item import Item
|
|
||||||
from lib import jsunpack
|
|
||||||
from platformcode import config, logger
|
|
||||||
|
|
||||||
host = 'http://pelisencasa.net'
|
|
||||||
|
|
||||||
tgenero = {"Comedia": "https://s7.postimg.org/ne9g9zgwb/comedia.png",
|
|
||||||
"Suspense": "https://s13.postimg.org/wmw6vl1cn/suspenso.png",
|
|
||||||
"Drama": "https://s16.postimg.org/94sia332d/drama.png",
|
|
||||||
"Acción": "https://s3.postimg.org/y6o9puflv/accion.png",
|
|
||||||
"Aventura": "https://s10.postimg.org/6su40czih/aventura.png",
|
|
||||||
"Romance": "https://s15.postimg.org/fb5j8cl63/romance.png",
|
|
||||||
"Animación": "https://s13.postimg.org/5on877l87/animacion.png",
|
|
||||||
"Ciencia ficción": "https://s9.postimg.org/diu70s7j3/cienciaficcion.png",
|
|
||||||
"Terror": "https://s7.postimg.org/yi0gij3gb/terror.png",
|
|
||||||
"Documental": "https://s16.postimg.org/7xjj4bmol/documental.png",
|
|
||||||
"Música": "https://s29.postimg.org/bbxmdh9c7/musical.png",
|
|
||||||
"Western": "https://s23.postimg.org/lzyfbjzhn/western.png",
|
|
||||||
"Fantasía": "https://s13.postimg.org/65ylohgvb/fantasia.png",
|
|
||||||
"Guerra": "https://s23.postimg.org/71itp9hcr/belica.png",
|
|
||||||
"Misterio": "https://s1.postimg.org/w7fdgf2vj/misterio.png",
|
|
||||||
"Crimen": "https://s4.postimg.org/6z27zhirx/crimen.png",
|
|
||||||
"Historia": "https://s15.postimg.org/fmc050h1n/historia.png",
|
|
||||||
"Familia": "https://s7.postimg.org/6s7vdhqrf/familiar.png"}
|
|
||||||
|
|
||||||
tletras = {'#': 'https://s32.postimg.org/drojt686d/image.png',
|
|
||||||
'a': 'https://s32.postimg.org/llp5ekfz9/image.png',
|
|
||||||
'b': 'https://s32.postimg.org/y1qgm1yp1/image.png',
|
|
||||||
'c': 'https://s32.postimg.org/vlon87gmd/image.png',
|
|
||||||
'd': 'https://s32.postimg.org/3zlvnix9h/image.png',
|
|
||||||
'e': 'https://s32.postimg.org/bgv32qmsl/image.png',
|
|
||||||
'f': 'https://s32.postimg.org/y6u7vq605/image.png',
|
|
||||||
'g': 'https://s32.postimg.org/9237ib6jp/image.png',
|
|
||||||
'h': 'https://s32.postimg.org/812yt6pk5/image.png',
|
|
||||||
'i': 'https://s32.postimg.org/6nbbxvqat/image.png',
|
|
||||||
'j': 'https://s32.postimg.org/axpztgvdx/image.png',
|
|
||||||
'k': 'https://s32.postimg.org/976yrzdut/image.png',
|
|
||||||
'l': 'https://s32.postimg.org/fmal2e9yd/image.png',
|
|
||||||
'm': 'https://s32.postimg.org/m19lz2go5/image.png',
|
|
||||||
'n': 'https://s32.postimg.org/b2ycgvs2t/image.png',
|
|
||||||
'o': 'https://s32.postimg.org/c6igsucpx/image.png',
|
|
||||||
'p': 'https://s32.postimg.org/jnro82291/image.png',
|
|
||||||
'q': 'https://s32.postimg.org/ve5lpfv1h/image.png',
|
|
||||||
'r': 'https://s32.postimg.org/nmovqvqw5/image.png',
|
|
||||||
's': 'https://s32.postimg.org/zd2t89jol/image.png',
|
|
||||||
't': 'https://s32.postimg.org/wk9lo8jc5/image.png',
|
|
||||||
'u': 'https://s32.postimg.org/w8s5bh2w5/image.png',
|
|
||||||
'v': 'https://s32.postimg.org/e7dlrey91/image.png',
|
|
||||||
'w': 'https://s32.postimg.org/fnp49k15x/image.png',
|
|
||||||
'x': 'https://s32.postimg.org/dkep1w1d1/image.png',
|
|
||||||
'y': 'https://s32.postimg.org/um7j3zg85/image.png',
|
|
||||||
'z': 'https://s32.postimg.org/jb4vfm9d1/image.png'}
|
|
||||||
|
|
||||||
|
|
||||||
def mainlist(item):
|
|
||||||
logger.info()
|
|
||||||
|
|
||||||
itemlist = []
|
|
||||||
|
|
||||||
itemlist.append(item.clone(title="Todas", action="lista", thumbnail='https://s18.postimg.org/fwvaeo6qh/todas.png',
|
|
||||||
fanart='https://s18.postimg.org/fwvaeo6qh/todas.png', url=host))
|
|
||||||
|
|
||||||
itemlist.append(
|
|
||||||
item.clone(title="Generos", action="seccion", thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png',
|
|
||||||
fanart='https://s3.postimg.org/5s9jg2wtf/generos.png', url=host, extra='generos'))
|
|
||||||
|
|
||||||
itemlist.append(
|
|
||||||
item.clone(title="Alfabetico", action="seccion", thumbnail='https://s17.postimg.org/fwi1y99en/a-z.png',
|
|
||||||
fanart='https://s17.postimg.org/fwi1y99en/a-z.png', url=host, extra='letras'))
|
|
||||||
|
|
||||||
itemlist.append(item.clone(title="Buscar", action="search", url=host + '/?s=',
|
|
||||||
thumbnail='https://s30.postimg.org/pei7txpa9/buscar.png',
|
|
||||||
fanart='https://s30.postimg.org/pei7txpa9/buscar.png'))
|
|
||||||
|
|
||||||
return itemlist
|
|
||||||
|
|
||||||
|
|
||||||
def lista(item):
|
|
||||||
logger.info()
|
|
||||||
|
|
||||||
itemlist = []
|
|
||||||
data = httptools.downloadpage(item.url).data
|
|
||||||
if item.extra != 'letras':
|
|
||||||
patron = '<li class="TPostMv">.*?<a href="(.*?)"><div class="Image">.*?src="(.*?)\?resize=.*?".*?class="Title">(.*?)<\/h2>.*?'
|
|
||||||
patron += '<span class="Year">(.*?)<\/span>.*?<span class="Qlty">(.*?)<\/span><\/p><div class="Description"><p>(.*?)<\/p>'
|
|
||||||
else:
|
|
||||||
patron = '<td class="MvTbImg"> <a href="(.*?)".*?src="(.*?)\?resize=.*?".*?<strong>(.*?)<\/strong> <\/a><\/td><td>(.*?)<\/td><td>.*?'
|
|
||||||
patron += 'class="Qlty">(.*?)<\/span><\/p><\/td><td>(.*?)<\/td><td>'
|
|
||||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
|
||||||
|
|
||||||
for scrapedurl, scrapedthumbnail, scrapedtitle, scrapedyear, calidad, scrapedplot in matches:
|
|
||||||
url = scrapedurl
|
|
||||||
thumbnail = scrapedthumbnail
|
|
||||||
plot = scrapedplot
|
|
||||||
contentTitle = scrapedtitle
|
|
||||||
title = contentTitle + ' (' + calidad + ')'
|
|
||||||
year = scrapedyear
|
|
||||||
fanart = ''
|
|
||||||
itemlist.append(
|
|
||||||
Item(channel=item.channel, action='findvideos', title=title, url=url, thumbnail=thumbnail, plot=plot,
|
|
||||||
fanart=fanart, contentTitle=contentTitle, infoLabels={'year': year}))
|
|
||||||
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
|
|
||||||
# Paginacion
|
|
||||||
|
|
||||||
if itemlist != []:
|
|
||||||
actual_page_url = item.url
|
|
||||||
next_page = scrapertools.find_single_match(data, '<a class="nextpostslink" rel="next" href="(.*?)">')
|
|
||||||
if next_page != '':
|
|
||||||
itemlist.append(Item(channel=item.channel, action="lista", title='Siguiente >>>', url=next_page,
|
|
||||||
thumbnail='https://s16.postimg.org/9okdu7hhx/siguiente.png'))
|
|
||||||
return itemlist
|
|
||||||
|
|
||||||
|
|
||||||
def seccion(item):
|
|
||||||
logger.info()
|
|
||||||
itemlist = []
|
|
||||||
data = httptools.downloadpage(item.url).data
|
|
||||||
if item.extra == 'generos':
|
|
||||||
patron = 'menu-item-object-category menu-item-.*?"><a href="(.*?)">(.*?)<\/a><\/li>'
|
|
||||||
else:
|
|
||||||
patron = '<li><a href="(.*?\/letter\/.*?)">(.*?)<\/a><\/li>'
|
|
||||||
|
|
||||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
|
||||||
|
|
||||||
for scrapedurl, scrapedtitle in matches:
|
|
||||||
thumbnail = ''
|
|
||||||
if item.extra == 'generos' and scrapedtitle in tgenero:
|
|
||||||
thumbnail = tgenero[scrapedtitle]
|
|
||||||
elif scrapedtitle.lower() in tletras:
|
|
||||||
thumbnail = tletras[scrapedtitle.lower()]
|
|
||||||
fanart = ''
|
|
||||||
title = scrapedtitle
|
|
||||||
url = scrapedurl
|
|
||||||
|
|
||||||
itemlist.append(
|
|
||||||
Item(channel=item.channel, action="lista", title=title, fulltitle=item.title, url=url, thumbnail=thumbnail,
|
|
||||||
fanart=fanart, extra=item.extra))
|
|
||||||
return itemlist
|
|
||||||
|
|
||||||
|
|
||||||
def findvideos(item):
|
|
||||||
logger.info()
|
|
||||||
itemlist = []
|
|
||||||
data = httptools.downloadpage(item.url).data
|
|
||||||
patron = 'class="Num">.*?<\/span>.*?href="(.*?)" class="Button STPb">.*?<\/a>.*?<span>(.*?)<\/span><\/td><td><span>(.*?)<\/span><\/td><td><span>.*?<\/span>'
|
|
||||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
|
||||||
infoLabels = item.infoLabels
|
|
||||||
for scrapedurl, servidor, idioma in matches:
|
|
||||||
new_item = (item.clone(url=scrapedurl, servidor=servidor, idioma=idioma, infoLabels=infoLabels))
|
|
||||||
itemlist += get_video_urls(new_item)
|
|
||||||
|
|
||||||
if config.get_videolibrary_support() and len(itemlist) > 0 and item.extra != 'findvideos':
|
|
||||||
itemlist.append(
|
|
||||||
Item(channel=item.channel, title='[COLOR yellow]Añadir esta pelicula a la videoteca[/COLOR]', url=item.url,
|
|
||||||
action="add_pelicula_to_library", extra="findvideos", contentTitle=item.contentTitle))
|
|
||||||
|
|
||||||
itemlist.insert(len(itemlist) - 1, item.clone(channel='trailertools', action='buscartrailer',
|
|
||||||
title='[COLOR orange]Trailer en Youtube[/COLOR]'))
|
|
||||||
|
|
||||||
return itemlist
|
|
||||||
|
|
||||||
|
|
||||||
def get_video_urls(item):
|
|
||||||
logger.info()
|
|
||||||
itemlist = []
|
|
||||||
data = httptools.downloadpage(item.url).data
|
|
||||||
data = scrapertools.find_single_match(data, '<script type="text\/javascript">(.*?)<\/script>')
|
|
||||||
data = jsunpack.unpack(data)
|
|
||||||
patron = '"file":"(.*?)","label":"(.*?)","type":"video.*?"}'
|
|
||||||
subtitle = scrapertools.find_single_match(data, 'tracks:\[{"file":"(.*?)","label":".*?","kind":"captions"}')
|
|
||||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
|
||||||
for url, calidad in matches:
|
|
||||||
if item.servidor == 'PELISENCASA':
|
|
||||||
item.servidor = 'Directo'
|
|
||||||
title = item.contentTitle + ' (' + item.idioma + ')' + ' (' + calidad + ')' + ' (' + item.servidor + ')'
|
|
||||||
itemlist.append(item.clone(title=title, url=url, calidad=calidad, action='play', subtitle=subtitle))
|
|
||||||
|
|
||||||
return itemlist
|
|
||||||
|
|
||||||
|
|
||||||
def search(item, texto):
|
|
||||||
logger.info()
|
|
||||||
texto = texto.replace(" ", "+")
|
|
||||||
item.url = item.url + texto
|
|
||||||
|
|
||||||
if texto != '':
|
|
||||||
return lista(item)
|
|
||||||
else:
|
|
||||||
return []
|
|
||||||
|
|
||||||
|
|
||||||
def newest(categoria):
|
|
||||||
logger.info()
|
|
||||||
itemlist = []
|
|
||||||
item = Item()
|
|
||||||
try:
|
|
||||||
if categoria == 'peliculas':
|
|
||||||
item.url = host
|
|
||||||
elif categoria == 'infantiles':
|
|
||||||
item.url = host + '/category/animacion/'
|
|
||||||
itemlist = lista(item)
|
|
||||||
if itemlist[-1].title == 'Siguiente >>>':
|
|
||||||
itemlist.pop()
|
|
||||||
except:
|
|
||||||
import sys
|
|
||||||
for line in sys.exc_info():
|
|
||||||
logger.error("{0}".format(line))
|
|
||||||
return []
|
|
||||||
|
|
||||||
return itemlist
|
|
||||||
@@ -215,18 +215,20 @@ def search(item, texto):
|
|||||||
def findvideos(item):
|
def findvideos(item):
|
||||||
logger.info()
|
logger.info()
|
||||||
itemlist = []
|
itemlist = []
|
||||||
duplicados = []
|
|
||||||
|
|
||||||
data = get_source(item.url)
|
data = get_source(item.url)
|
||||||
patron = '<div class=TPlayerTbCurrent id=(.*?)><iframe.*?src=(.*?) frameborder'
|
patron = '<div class=TPlayer.*?\s+id=(.*?)><iframe width=560 height=315 src=(.*?) frameborder=0'
|
||||||
matches = re.compile(patron, re.DOTALL).findall(data)
|
matches = re.compile(patron, re.DOTALL).findall(data)
|
||||||
|
|
||||||
for opt, urls_page in matches:
|
for opt, urls_page in matches:
|
||||||
language = scrapertools.find_single_match (data,'data-TPlayerNv=%s><span>Opción <strong>.*?'
|
logger.debug ('option: %s' % opt)
|
||||||
|
language = scrapertools.find_single_match (data,'data-TPlayerNv=%s><span>Opción <strong>.'
|
||||||
'<\/strong><\/span>.*?<span>(.*?)<\/span'%opt)
|
'<\/strong><\/span>.*?<span>(.*?)<\/span'%opt)
|
||||||
data = httptools.downloadpage(urls_page).data
|
|
||||||
servers = scrapertools.find_multiple_matches(data,'<button id="(.*?)"')
|
video_data = httptools.downloadpage(urls_page).data
|
||||||
|
servers = scrapertools.find_multiple_matches(video_data,'<button id="(.*?)"')
|
||||||
for server in servers:
|
for server in servers:
|
||||||
|
quality = item.quality
|
||||||
info_urls = urls_page.replace('embed','get')
|
info_urls = urls_page.replace('embed','get')
|
||||||
video_info=httptools.downloadpage(info_urls+'/'+server).data
|
video_info=httptools.downloadpage(info_urls+'/'+server).data
|
||||||
video_info = jsontools.load(video_info)
|
video_info = jsontools.load(video_info)
|
||||||
@@ -238,8 +240,13 @@ def findvideos(item):
|
|||||||
url = 'https://'+video_server+'/embed/'+video_id
|
url = 'https://'+video_server+'/embed/'+video_id
|
||||||
else:
|
else:
|
||||||
url = 'https://'+video_server+'/e/'+video_id
|
url = 'https://'+video_server+'/e/'+video_id
|
||||||
title = item.title
|
title = item.contentTitle + ' [%s] [%s]'%(quality, language)
|
||||||
itemlist.append(item.clone(title=title, url=url, action='play', language=language))
|
itemlist.append(item.clone(title=title,
|
||||||
|
url=url,
|
||||||
|
action='play',
|
||||||
|
language=language,
|
||||||
|
quality=quality
|
||||||
|
))
|
||||||
itemlist = servertools.get_servers_itemlist(itemlist)
|
itemlist = servertools.get_servers_itemlist(itemlist)
|
||||||
return itemlist
|
return itemlist
|
||||||
|
|
||||||
|
|||||||
@@ -21,8 +21,7 @@ list_language = ['default']
|
|||||||
CALIDADES = ['SD', 'HDiTunes', 'Micro-HD-720p', 'Micro-HD-1080p', '1080p', '720p']
|
CALIDADES = ['SD', 'HDiTunes', 'Micro-HD-720p', 'Micro-HD-1080p', '1080p', '720p']
|
||||||
list_quality = CALIDADES
|
list_quality = CALIDADES
|
||||||
|
|
||||||
list_servers = ['streamix',
|
list_servers = ['powvideo',
|
||||||
'powvideo',
|
|
||||||
'streamcloud',
|
'streamcloud',
|
||||||
'openload',
|
'openload',
|
||||||
'flashx',
|
'flashx',
|
||||||
@@ -311,6 +310,8 @@ def findvideos(item):
|
|||||||
d=c[0].rstrip( )
|
d=c[0].rstrip( )
|
||||||
d=d.lstrip( )
|
d=d.lstrip( )
|
||||||
list_links[i].server=d
|
list_links[i].server=d
|
||||||
|
|
||||||
|
list_links = servertools.get_servers_itemlist(list_links)
|
||||||
autoplay.start(list_links, item)
|
autoplay.start(list_links, item)
|
||||||
|
|
||||||
return list_links
|
return list_links
|
||||||
|
|||||||
@@ -160,7 +160,9 @@ def findvideos(item):
|
|||||||
'gamo': 'http://gamovideo.com/embed-',
|
'gamo': 'http://gamovideo.com/embed-',
|
||||||
'powvideo': 'http://powvideo.net/embed-',
|
'powvideo': 'http://powvideo.net/embed-',
|
||||||
'play': 'http://streamplay.to/embed-',
|
'play': 'http://streamplay.to/embed-',
|
||||||
'vido': 'http://vidoza.net/embed-'}
|
'vido': 'http://vidoza.net/embed-',
|
||||||
|
'net': 'http://hqq.tv/player/embed_player.php?vid='
|
||||||
|
}
|
||||||
data = get_source(item.url)
|
data = get_source(item.url)
|
||||||
noemitido = scrapertools.find_single_match(data, '<p><img src=(http://darkiller.com/images/subiendo.png) border=0\/><\/p>')
|
noemitido = scrapertools.find_single_match(data, '<p><img src=(http://darkiller.com/images/subiendo.png) border=0\/><\/p>')
|
||||||
patron = 'id=tab\d+.*?class=tab_content><script>(.*?)\((.*?)\)<\/script>'
|
patron = 'id=tab\d+.*?class=tab_content><script>(.*?)\((.*?)\)<\/script>'
|
||||||
|
|||||||
@@ -7,7 +7,8 @@
|
|||||||
"banner": "https://s9.postimg.org/5yxsq205r/ultrapeliculashd_banner.png",
|
"banner": "https://s9.postimg.org/5yxsq205r/ultrapeliculashd_banner.png",
|
||||||
"thumbnail": "https://s13.postimg.org/d042quw9j/ultrapeliculashd.png",
|
"thumbnail": "https://s13.postimg.org/d042quw9j/ultrapeliculashd.png",
|
||||||
"categories": [
|
"categories": [
|
||||||
"movie"
|
"movie",
|
||||||
|
"direct"
|
||||||
],
|
],
|
||||||
"settings": [
|
"settings": [
|
||||||
{
|
{
|
||||||
|
|||||||
@@ -192,27 +192,24 @@ def findvideos(item):
|
|||||||
data = httptools.downloadpage(item.url).data
|
data = httptools.downloadpage(item.url).data
|
||||||
data = re.sub(r'"|\n|\r|\t| |<br>|\s{2,}', "", data)
|
data = re.sub(r'"|\n|\r|\t| |<br>|\s{2,}', "", data)
|
||||||
|
|
||||||
patron = '<iframe class=metaframe rptss src=(.*?) frameborder=0 allowfullscreen><\/iframe>'
|
patron = '<iframe class=metaframe rptss src=(.*?) (?:width=.*?|frameborder=0) allowfullscreen><\/iframe>'
|
||||||
matches = matches = re.compile(patron, re.DOTALL).findall(data)
|
matches = re.compile(patron, re.DOTALL).findall(data)
|
||||||
|
|
||||||
for video_url in matches:
|
for video_url in matches:
|
||||||
|
if 'stream' in video_url:
|
||||||
|
data = httptools.downloadpage('https:'+video_url).data
|
||||||
|
new_url=scrapertools.find_single_match(data, 'iframe src="(.*?)"')
|
||||||
|
new_data = httptools.downloadpage(new_url).data
|
||||||
|
|
||||||
# TODO Reparar directos
|
url, quality = scrapertools.find_single_match(new_data, 'file:.*?"(.*?)",label:.*?"(.*?)"')
|
||||||
# if 'stream' in video_url:
|
headers_string = '|Referer=%s' % url
|
||||||
# data = httptools.downloadpage('https:'+video_url).data
|
url = url.replace('download', 'preview')+headers_string
|
||||||
# new_url=scrapertools.find_single_match(data, 'iframe src="(.*?)"')
|
sub = scrapertools.find_single_match(new_data, 'file:.*?"(.*?srt)"')
|
||||||
# new_data = httptools.downloadpage(new_url).data
|
new_item = (Item(title=item.title, url=url, quality=quality, server='directo',
|
||||||
# logger.debug(new_data)
|
subtitle=sub))
|
||||||
#
|
itemlist.append(new_item)
|
||||||
# url, quality = scrapertools.find_single_match(new_data, "file:'(.*?)',label:'(.*?)'")
|
else:
|
||||||
# headers_string = '|Referer=%s' % url
|
itemlist.extend(servertools.find_video_items(data=video_url))
|
||||||
# url = url.replace('download', 'preview')+headers_string
|
|
||||||
# sub = scrapertools.find_single_match(new_data, "file:.*?'(.*?srt)'")
|
|
||||||
# new_item = (Item(title=item.title, url=url, quality=quality, server='directo',
|
|
||||||
# subtitle=sub))
|
|
||||||
# itemlist.append(new_item)
|
|
||||||
# else:
|
|
||||||
itemlist.extend(servertools.find_video_items(data=video_url))
|
|
||||||
|
|
||||||
for videoitem in itemlist:
|
for videoitem in itemlist:
|
||||||
videoitem.channel = item.channel
|
videoitem.channel = item.channel
|
||||||
|
|||||||
Reference in New Issue
Block a user