Canal Anime-Latino
Publicado: 10 Sep 2015, 16:06
Aquí tienes el Anime-Latino.
Lo probaré bien en casa antes de meterlo al git.
Lo probaré bien en casa antes de meterlo al git.
Código: Seleccionar todo
# -*- coding: utf-8 -*-
#-----------------------------------------------------------------
# pelisalacarta - XBMC Plugin
# Canal para animelatino - Por Kampanita-2015
#
# 10/9/2015 - inicio
#
# http://blog.tvalacarta.info/plugin-xbmc/pelisalacarta/
#-----------------------------------------------------------------
import urlparse,urllib2,urllib,re
import os, sys
from core import logger
from core import config
from core import scrapertools
from core.item import Item
from servers import servertools
__channel__ = "animelatino"
__category__ = "F,L"
__type__ = "generic"
__title__ = "animelatino"
__language__ = "ES"
DEBUG = config.get_setting("debug")
def isGeneric():
return True
# Main list manual
#PDTE solo thumbs y fanart.
def mainlist(item):
logger.info("[animelatino] mainlist")
itemlist = []
#Peliculas,Series, Latino, Por Categoria, Alfabeticamente.
itemlist.append( Item(channel=__channel__, action="menupelis", title="Peliculas", url="http://www.anime-latino.net/peliculas.php" , thumbnail="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg", fanart="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Series", url="http://series.anime-latino.net/" , thumbnail="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg", fanart="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Latino", url="http://www.anime-latino.net/genero/latino.html" , thumbnail="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg", fanart="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg") )
itemlist.append( Item(channel=__channel__, action="porcat", title="Por Categoria", url="" , thumbnail="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQDsZyDowjAAE23njJbp9hYZRe9viAuq-f1niz2nRC4jNwXkD6W", fanart="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQDsZyDowjAAE23njJbp9hYZRe9viAuq-f1niz2nRC4jNwXkD6W") )
itemlist.append( Item(channel=__channel__, action="poralf", title="Alfabeticamente", url="" , thumbnail="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQDsZyDowjAAE23njJbp9hYZRe9viAuq-f1niz2nRC4jNwXkD6W", fanart="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQDsZyDowjAAE23njJbp9hYZRe9viAuq-f1niz2nRC4jNwXkD6W") )
return itemlist
#PDTE solo thumbs y fanart.
def porcat(item):
logger.info("[animelatino] porcat")
itemlist = []
itemlist.append( Item(channel=__channel__, action="menupelis", title="Accion", url="http://www.anime-latino.net/genero/accion.html" , thumbnail="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg", fanart="http://primerasnoticias.com/wp-content/uploads/2012/07/game1.jpg") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Amistad", url="http://www.anime-latino.net/genero/amistad.html" , thumbnail="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQDsZyDowjAAE23njJbp9hYZRe9viAuq-f1niz2nRC4jNwXkD6W", fanart="https://encrypted-tbn0.gstatic.com/images?q=tbn:ANd9GcQDsZyDowjAAE23njJbp9hYZRe9viAuq-f1niz2nRC4jNwXkD6W") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Aventura", url="http://www.anime-latino.net/genero/aventura.html" , thumbnail="http://st-listas.20minutos.es/images/2014-11/389838/list_640px.jpg?1416583998", fanart="http://st-listas.20minutos.es/images/2014-11/389838/list_640px.jpg?1416583998") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Carreras", url="http://www.anime-latino.net/genero/carreras.html" , thumbnail="https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQlWwCJco1oc0Jlc5Jr6i1CcKoLWtZsEkFabDuuv4bFANk90LiE", fanart="https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQlWwCJco1oc0Jlc5Jr6i1CcKoLWtZsEkFabDuuv4bFANk90LiE") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Comedia", url="http://www.anime-latino.net/genero/comedia.html" , thumbnail="https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQlWwCJco1oc0Jlc5Jr6i1CcKoLWtZsEkFabDuuv4bFANk90LiE", fanart="https://encrypted-tbn2.gstatic.com/images?q=tbn:ANd9GcQlWwCJco1oc0Jlc5Jr6i1CcKoLWtZsEkFabDuuv4bFANk90LiE") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Cyberpunk", url="http://www.anime-latino.net/genero/cyberpunk.html" , thumbnail="http://bebefeliz.com/files/2013/05/pocoyo.jpg", fanart="http://bebefeliz.com/files/2013/05/pocoyo.jpg") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Deportes", url="http://www.anime-latino.net/genero/deportes.html" , thumbnail="http://upload.wikimedia.org/wikipedia/en/e/e2/Yes_stars_drama_logo.png", fanart="http://upload.wikimedia.org/wikipedia/en/e/e2/Yes_stars_drama_logo.png") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Drama", url="http://www.anime-latino.net/genero/drama.html" , thumbnail="http://upload.wikimedia.org/wikipedia/en/e/e2/Yes_stars_drama_logo.png", fanart="http://upload.wikimedia.org/wikipedia/en/e/e2/Yes_stars_drama_logo.png") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Ecchi", url="http://www.anime-latino.net/genero/ecchi.html" , thumbnail="http://st-listas.20minutos.es/images/2013-05/362124/4039926_640px.jpg?1374169785", fanart="http://st-listas.20minutos.es/images/2013-05/362124/4039926_640px.jpg?1374169785") )
itemlist.append( Item(channel=__channel__, action="menupelis", title="Escolares", url="http://www.anime-latino.net/genero/escolares.html", thumbnail="http://b.vimeocdn.com/ts/389/464/389464338_640.jpg", fanart="http://b.vimeocdn.com/ts/389/464/389464338_640.jpg") )
return itemlist
def poralf(item):
itemlist=[]
for i in range(ord('a'),ord('z')+1):
itemlist.append( Item(channel=__channel__, action="menupelis", title=chr(i), url="http://www.anime-latino.net/letra/"+chr(i)+".html", thumbnail=item.thumbnail, fanart=item.fanart) )
return itemlist
def menupelis(item):
logger.info("[animelatino] menupelis")
logger.info("[animelatino] :"+item.url)
itemlist = []
data = scrapertools.cache_page(item.url).decode('iso-8859-1').encode('utf-8')
patronbloque = '<div id="mid">(.*?)<div id="right'
matchesbloque = re.compile(patronbloque,re.DOTALL).findall(data)
for datos in matchesbloque:
patron= '<img.*?src="([^"]+)".*?href="([^"]+.html)".*?title="([^"]+)"'
matches = re.compile(patron,re.DOTALL).findall(datos)
for scrapedthumbnail,scrapedurl,scrapedtitle in matches:
url = urlparse.urljoin(item.url,scrapedurl)
thumbnail=urlparse.urljoin(item.thumbnail,scrapedthumbnail)
itemlist.append( Item(channel=__channel__, action="verpeli", title=scrapedtitle, fulltitle=scrapedtitle , url=url, thumbnail=thumbnail) )
return itemlist
def verpeli(item):
logger.info("[animelatino] verpeli")
logger.info("[animelatino] "+item.url)
itemlist = []
data = scrapertools.cache_page(item.url).decode('iso-8859-1').encode('utf-8')
patronsin='<div class="sinop"><strong class="clms">Sinopsis: </strong>"([^"]+)"<div class="clearboth'
matches = re.compile(patronsin,re.DOTALL).findall(data)
for scrapedplot in matches:
scrapedplot=scrapedplot.htmlclean
# el bloque entre '<div class="clm">(.*?)<div class="adspl"'
patronenlaces='<div class="clm">(.*?)<div class="adspl"'
matches = re.compile(patronenlaces,re.DOTALL).findall(data)
scrapertools.printMatches(matches)
itemlist = []
# title <h1>(.*?)</h1>
# url <iframe.*?src="()".*?</iframe>
patron = '<h1>(.*?)</h1>.*?<iframe.*?src="([^"])+".*?</iframe>'
re.compile(patron,re.DOTALL).findall(data)
for scrapedtitle,scrapedurl in matches:
url=urlparse.urljoin(item.url,scrapedurl)
itemlist.append( Item(channel=__channel__, action="play", fanart=item.fanart, thumbnail=item.thumbnail,title=scrapedtitle, fulltitle=scrapedtitle , url=url, plot=scrapedplot) )
return itemlist
def play(item):
logger.info("[animelatino] play url="+item.url)
itemlist = servertools.find_video_items(data=item.url)
return itemlist