Files
addon/plugin.video.alfa/channels/animevision.py
2019-04-08 18:17:40 +02:00

146 lines
4.4 KiB
Python

# -*- coding: utf-8 -*-
# ------------------------------------------------------------
# Ringraziamo Icarus crew
# Canale per animevision
# ----------------------------------------------------------
import re
from core import httptools, scrapertools, tmdb
from platformcode import logger
from core.item import Item
host = "https://www.animevision.it"
def mainlist(item):
logger.info("kod.animevision mainlist")
itemlist = [Item(channel=item.channel,
action="lista_anime",
title="[COLOR azure]Anime [/COLOR]- [COLOR orange]Lista Completa[/COLOR]",
url=host + "/elenco.php",
thumbnail=CategoriaThumbnail,
fanart=CategoriaFanart),
Item(channel=item.channel,
action="search",
title="[COLOR yellow]Cerca...[/COLOR]",
url=host + "/?s=",
thumbnail=CategoriaThumbnail,
fanart=CategoriaFanart)]
return itemlist
def search(item, texto):
logger.info("kod.animevision search")
item.url = host + "/?search=" + texto
try:
return lista_anime_src(item)
# Continua la ricerca in caso di errore
except:
import sys
for line in sys.exc_info():
logger.error("%s" % line)
return []
def lista_anime_src(item):
logger.info("kod.animevision lista_anime_src")
itemlist = []
data = httptools.downloadpage(item.url).data
patron = r"<a class=\'false[Ll]ink\'\s*href=\'([^\']+)\'[^>]+>[^>]+>[^<]+<img\s*style=\'[^\']+\'\s*class=\'[^\']+\'\s*src=\'[^\']+\'\s*data-src=\'([^\']+)\'\s*alt=\'([^\']+)\'[^>]*>"
matches = re.compile(patron, re.DOTALL).findall(data)
for scrapedurl, scrapedimg, scrapedtitle in matches:
scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle)
scrapedimg = host + "/" + scrapedimg
scrapedurl = host + "/" + scrapedurl
itemlist.append(
Item(channel=item.channel,
action="findvideos",
title=scrapedtitle,
url=scrapedurl,
fulltitle=scrapedtitle,
show=scrapedtitle,
thumbnail=scrapedimg,
fanart=scrapedimg,
viewmode="movie"))
return itemlist
def lista_anime(item):
logger.info("kod.animevision lista_anime")
itemlist = []
data = httptools.downloadpage(item.url).data
patron = "<div class='epContainer' ><a class='falseLink' href='(.*?)'><div[^=]+=[^=]+=[^=]+=[^=]+='(.*?)'[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^=]+=[^>]+><b>(.*?)<"
matches = re.compile(patron, re.DOTALL).findall(data)
for scrapedurl, scrapedimg, scrapedtitle in matches:
scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle)
scrapedimg = host + "/" + scrapedimg
scrapedurl = host + "/" + scrapedurl
itemlist.append(
Item(channel=item.channel,
action="episodi",
contentType="tvshow",
title=scrapedtitle,
text_color="azure",
url=scrapedurl,
fulltitle=scrapedtitle,
show=scrapedtitle,
thumbnail=scrapedimg,
fanart=scrapedimg,
viewmode="movie"))
tmdb.set_infoLabels_itemlist(itemlist, seekTmdb=True)
return itemlist
def episodi(item):
logger.info("kod.animevision episodi")
itemlist = []
data = httptools.downloadpage(item.url).data
patron = "<a class='nodecoration text-white' href='(.*?)'>(.+?)<"
matches = re.compile(patron, re.DOTALL).findall(data)
for scrapedurl, scrapedtitle in matches:
scrapedtitle = scrapedtitle.split(';')[1]
scrapedtitle = scrapertools.decodeHtmlentities(scrapedtitle)
scrapedurl = host + "/" + scrapedurl
itemlist.append(
Item(channel=item.channel,
action="findvideos",
title=scrapedtitle,
url=scrapedurl,
fulltitle=scrapedtitle,
show=scrapedtitle,
thumbnail=item.thumbnail,
fanart=item.fanart))
return itemlist
CategoriaThumbnail = "http://static.europosters.cz/image/750/poster/street-fighter-anime-i4817.jpg"
CategoriaFanart = "https://i.ytimg.com/vi/IAlbvyBdYdY/maxresdefault.jpg"