# -*- coding: utf-8 -*-
import re
from core import httptools
from core import jsontools
from core import scrapertools
from core import servertools
from core import tmdb
from core import jsontools
from core.item import Item
from platformcode import config, logger
tgenero = {"Drama": "https://s16.postimg.org/94sia332d/drama.png",
u"Accción": "https://s3.postimg.org/y6o9puflv/accion.png",
u"Animación": "https://s13.postimg.org/5on877l87/animacion.png",
u"Ciencia Ficción": "https://s9.postimg.org/diu70s7j3/cienciaficcion.png",
"Terror": "https://s7.postimg.org/yi0gij3gb/terror.png",
}
audio = {'LAT': '[COLOR limegreen]LATINO[/COLOR]', 'SUB': '[COLOR red]Subtitulado[/COLOR]'}
host = 'http://pelisfox.tv'
def mainlist(item):
logger.info()
itemlist = []
itemlist.append(item.clone(title="Ultimas",
action="lista",
thumbnail='https://s22.postimg.org/cb7nmhwv5/ultimas.png',
fanart='https://s22.postimg.org/cb7nmhwv5/ultimas.png',
url=host + '/estrenos/'
))
itemlist.append(item.clone(title="Generos",
action="seccion",
url=host,
thumbnail='https://s3.postimg.org/5s9jg2wtf/generos.png',
fanart='https://s3.postimg.org/5s9jg2wtf/generos.png',
seccion='generos'
))
itemlist.append(item.clone(title="Por Año",
action="seccion",
url=host + '/peliculas/2017/',
thumbnail='https://s8.postimg.org/7eoedwfg5/pora_o.png',
fanart='https://s8.postimg.org/7eoedwfg5/pora_o.png',
seccion='anios'
))
itemlist.append(item.clone(title="Por Actor",
action="seccion",
url=host + '/actores/',
thumbnail='https://s17.postimg.org/w25je5zun/poractor.png',
fanart='https://s17.postimg.org/w25je5zun/poractor.png',
seccion='actor'
))
itemlist.append(item.clone(title="Buscar",
action="search",
url=host + '/api/elastic/suggest?query=',
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
data = re.sub(r'"|\n|\r|\t| |
|\s{2,}', "", data)
if item.seccion != 'actor':
patron = '
(.*?)<\/p><\/span><\/a><\/li>' else: patron = '
(.*?)<\/p>
(.*?)<\/p>'
matches = re.compile(patron, re.DOTALL).findall(data)
for scrapedurl, scrapedtitle, scrapedthumbnail, scrapedyear in matches:
url = host + scrapedurl
if item.seccion != 'actor':
thumbnail = scrapedthumbnail
contentTitle = scrapedtitle
else:
thumbnail = scrapedtitle
contentTitle = scrapedthumbnail
plot = ''
year = scrapedyear
title = contentTitle + ' (' + year + ')'
itemlist.append(
Item(channel=item.channel,
action='findvideos',
title=title,
url=url,
thumbnail=thumbnail,
plot=plot,
contentTitle=contentTitle,
infoLabels={'year': year}
))
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
# Paginacion
if itemlist != []:
actual_page = scrapertools.find_single_match(data, '(.*?)<\/a>')
if actual_page:
next_page_num = int(actual_page) + 1
next_page = scrapertools.find_single_match(data,
'
|\s{2,}', "", data)
if item.seccion == 'generos':
patron = '(.*?)<\/a>'
elif item.seccion == 'anios':
patron = '<\/figure>'
matches = re.compile(patron, re.DOTALL).findall(data)
if item.seccion != 'actor':
for scrapedurl, scrapedtitle in matches:
title = scrapedtitle.decode('utf-8')
thumbnail = ''
if item.seccion == 'generos':
thumbnail = tgenero[title]
fanart = ''
url = host + scrapedurl
itemlist.append(
Item(channel=item.channel,
action="lista",
title=title,
fulltitle=item.title,
url=url,
thumbnail=thumbnail,
fanart=fanart
))
else:
for scrapedurl, scrapedname, scrapedthumbnail in matches:
thumbnail = scrapedthumbnail
fanart = ''
title = scrapedname
url = host + scrapedurl
itemlist.append(Item(channel=item.channel,
action="lista",
title=title,
fulltitle=item.title,
url=url,
thumbnail=thumbnail,
fanart=fanart,
seccion=item.seccion
))
# Paginacion
if itemlist != []:
next_page = scrapertools.find_single_match(data, '
|\s{2,}', "", data)
patron = '