Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # -*- coding: utf-8 -*-
- # ------------------------------------------------------------
- # streamondemand.- XBMC Plugin
- # Canal para itafilmtv
- # http://blog.tvalacarta.info/plugin-xbmc/streamondemand.
- # By Costaplus
- # ------------------------------------------------------------
- import re
- import sys
- import urlparse
- import urllib2
- import xbmc
- from core import config
- from core import logger
- from core import scrapertools
- from core.item import Item
- from servers import servertools
- __channel__ = "animetubeitalia"
- __category__ = "F"
- __type__ = "generic"
- __title__ = "animetubeitalia.it"
- __language__ = "IT"
- DEBUG = True #config.get_setting("debug")
- host = "http://www.animetubeitalia.it"
- hostlista = host + "/animetube/"
- def isGeneric():
- return True
- #-----------------------------------------------------------------
- def mainlist(item):
- log("animetubeita","mainlist")
- itemlist =[]
- itemlist.append(Item(channel=__channel__, action="lista_nuove_serie", title="[COLOR yellow]Nuove Serie[/COLOR]",url=hostlista + "ultimeSerie.php", thumbnail=CategoriaThumbnail, fanart=CategoriaFanart))
- itemlist.append(Item(channel=__channel__,action="lista_anime",title="[COLOR azure]Lista Serie[/COLOR]" ,url=hostlista+"ListaSerie.php",thumbnail=AnimeThumbnail,fanart=AnimeFanart))
- itemlist.append(Item(channel=__channel__,action="lista_generi" ,title="[COLOR azure]Categorie[/COLOR]",url=hostlista+"ListaGeneri.php" ,thumbnail=CategoriaThumbnail,fanart=CategoriaFanart))
- itemlist.append(Item(channel=__channel__,action="cerca" ,title="[COLOR orange]Cerca...[/COLOR]",url=hostlista+"ListaSerie.php",thumbnail=CercaThumbnail,fanart=CercaFanart))
- return itemlist
- #=================================================================
- #http://www.animetubeitalia.it/animetube/ListaSerie.php
- #-----------------------------------------------------------------
- def lista_nuove_serie(item):
- log("lista_nuove_serie", "lista_nuove_serie")
- itemlist = []
- patron = '<div style="float.*?>\s+<a href=".*?=(.*?)".*?\s+<a href="(.*?)"><img.*?src="(.*?)"></a>'
- for scrapedtitle,scrapedurl,scrapedthumbnail in scrapedAll(item.url, patron):
- log("lista_anime","scrapedtitle:" + scrapedtitle +" scrapedurl: " + scrapedurl + " scrapedthumbnail:" + scrapedthumbnail)
- scrapedtitle=scrapedtitle.replace("_"," ")
- itemlist.append(Item(channel=__channel__, action="episodi", title=scrapedtitle, url=hostlista +scrapedurl,thumbnail=hostlista + scrapedthumbnail, fulltitle=scrapedtitle, show=scrapedtitle,fanart=hostlista + scrapedthumbnail))
- #Paginazione
- #===========================================================
- patron='<a style="color:white">.*?</a>.*?<a href="(.*?)">'
- for Pagina in scrapedAll(item.url,patron):
- pass
- xbmc.log(hostlista+ "ultimeSerie.php" + Pagina)
- itemlist.append(Item(channel=__channel__, action="lista_nuove_serie", title="[COLOR orange]Successivo>>[/COLOR]", url=hostlista+ "ultimeSerie.php" + Pagina,thumbnail="http://2.bp.blogspot.com/-fE9tzwmjaeQ/UcM2apxDtjI/AAAAAAAAeeg/WKSGM2TADLM/s1600/pager+old.png",folder=True))
- itemlist.append(Item(channel=__channel__, action="HomePage", title="[COLOR yellow]Torna Home[/COLOR]", folder=True))
- return itemlist
- #=================================================================
- #-----------------------------------------------------------------
- def lista_anime(item):
- log("lista_anime", "lista_anime")
- itemlist = []
- patron = '<a class="screenshot" rel="(.*?)" href="(.*?)">(.*?)</a>'
- for scrapedthumbnail,scrapedurl,scrapedtitle in scrapedAll(item.url, patron):
- log("lista_anime","scrapedurl: " + scrapedurl + " scrapedthumbnail:" + scrapedthumbnail + " scrapedtitle:" + scrapedtitle)
- itemlist.append(Item(channel=__channel__, action="episodi", title=scrapedtitle, url=hostlista +scrapedurl,thumbnail=hostlista + scrapedthumbnail, fulltitle=scrapedtitle, show=scrapedtitle,fanart=hostlista + scrapedthumbnail))
- return itemlist
- #=================================================================
- def lista_generi(item):
- log("lista_anime", "lista_generi")
- itemlist = []
- patron = '<input type="checkbox" id="check.*?" name="(.*?)" value="(.*?)" >'
- for scrapednum,scrapedtitle in scrapedAll(item.url, patron):
- log("lista_generi","scrapedtitle:" + scrapedtitle)
- itemlist.append(Item(channel=__channel__, action="episodi", title=scrapedtitle, url="",thumbnail=item.thumbnail, fulltitle=scrapedtitle, show=scrapedtitle,fanart=item.fanart))
- return itemlist
- #=================================================================
- #-----------------------------------------------------------------
- def episodi(item):
- log("episodi", "episodi")
- itemlist =[]
- single='<i>.*?</i>'
- patron= '<a href="(.*?)">(.*?)</a>'
- for scrapedurl,scrapedtitle in scrapedSingle(item.url,single, patron):
- log("episodi", "scrapedurl: " + scrapedurl + " scrapedtitle:" + scrapedtitle)
- #if DEBUG: logger.info("scrapedurl: " + scrapedurl + " scrapedtitle:" + scrapedtitle)
- itemlist.append(Item(channel=__channel__, action="player", title=scrapedtitle, url=hostlista + scrapedurl,thumbnail=item.thumbnail, fulltitle=scrapedtitle, show=scrapedtitle,fanart=item.thumbnail))
- return itemlist
- #=================================================================
- #-----------------------------------------------------------------
- def search(item,texto):
- log("animetubeitalia", "search")
- itemlist = []
- patron = '<a class="screenshot" rel="(.*?)" href="(.*?)">(.*?)</a>'
- for scrapedthumbnail, scrapedurl, scrapedtitle in scrapedAll(item.url, patron):
- log("lista_anime","scrapedurl: " + scrapedurl + " scrapedthumbnail:" + scrapedthumbnail + " scrapedtitle:" + scrapedtitle)
- if scrapedtitle.lower().startswith(texto, 0):
- itemlist.append(Item(channel=__channel__, action="episodi", title=scrapedtitle, url=hostlista + scrapedurl,thumbnail=hostlista + scrapedthumbnail, fulltitle=scrapedtitle, show=scrapedtitle,fanart=hostlista + scrapedthumbnail))
- return itemlist
- #=================================================================
- #-----------------------------------------------------------------
- def player(item):
- itemlist =[]
- xbmc.log(item.url)
- patron='<source.*?src="(.*?)".*?>'
- #Link a video mp4
- for scrapedurl in scrapedAll(item.url, patron):
- url=hostlista+scrapedurl
- log("player","url Video:"+url)
- itemlist.append(Item(channel=__channel__, action="play", title=item.title + "[COLOR yellow] Normale [/COLOR]", url=url, thumbnail=item.thumbnail,plot=item.plot,fanart=item.fanart, folder=False))
- # Link a video mp4 alternativo
- for scrapedurl in scrapedAllPost(item.url,"player=1", patron):
- url = hostlista + scrapedurl
- log("player", "url Video:" + url)
- itemlist.append(Item(channel=__channel__, action="play", title=item.title + "[COLOR orange] Alternativo [/COLOR]", url=url, thumbnail=item.thumbnail,plot=item.plot, fanart=item.fanart, folder=False))
- return itemlist
- #=================================================================
- #=================================================================
- # Funzioni di servizio
- #-----------------------------------------------------------------
- def scrapedAll(url="",patron=""):
- matches = []
- data = scrapertools.cache_page(url,timeout=10)
- if DEBUG: logger.info("data:"+data)
- xbmc.log("data:" + data)
- MyPatron = patron
- matches = re.compile(MyPatron, re.DOTALL).findall(data)
- scrapertools.printMatches(matches)
- return matches
- #=================================================================
- #-----------------------------------------------------------------
- def scrapedAllPost(url="",Post="",patron=""):
- matches = []
- data = scrapertools.cachePagePost(url,post=Post)
- if DEBUG: logger.info("data:"+data)
- MyPatron = patron
- matches = re.compile(MyPatron, re.DOTALL).findall(data)
- scrapertools.printMatches(matches)
- return matches
- #=================================================================
- #-----------------------------------------------------------------
- def scrapedSingle(url="",single="",patron=""):
- matches =[]
- data = scrapertools.cache_page(url,timeout=10)
- xbmc.log("url:" + url + " data:" + data)
- elemento = scrapertools.find_single_match(data, single)
- xbmc.log("trovato:" + elemento)
- matches = re.compile(patron, re.DOTALL).findall(elemento)
- scrapertools.printMatches(matches)
- return matches
- #=================================================================
- #-----------------------------------------------------------------
- def log(funzione="",stringa="",canale=__channel__):
- if DEBUG:logger.info("[" + canale + "].[" + funzione + "] " + stringa)
- xbmc.log("[" + canale + "].[" + funzione + "] " + stringa)
- #=================================================================
- #-----------------------------------------------------------------
- def HomePage(item):
- xbmc.executebuiltin("ReplaceWindow(10024,plugin://plugin.video.streamondemand)")
- #=================================================================
- #=================================================================
- # riferimenti di servizio
- #-----------------------------------------------------------------
- AnimeThumbnail="http://img15.deviantart.net/f81c/i/2011/173/7/6/cursed_candies_anime_poster_by_careko-d3jnzg9.jpg"
- AnimeFanart="https://i.ytimg.com/vi/IAlbvyBdYdY/maxresdefault.jpg"
- CategoriaThumbnail="http://static.europosters.cz/image/750/poster/street-fighter-anime-i4817.jpg"
- CategoriaFanart="https://i.ytimg.com/vi/IAlbvyBdYdY/maxresdefault.jpg"
- CercaThumbnail="http://dc467.4shared.com/img/fEbJqOum/s7/13feaf0c8c0/Search"
- CercaFanart="https://i.ytimg.com/vi/IAlbvyBdYdY/maxresdefault.jpg"
- HomeTxt = "[COLOR yellow]Torna Home[/COLOR]"
- AvantiTxt="[COLOR orange]Successivo>>[/COLOR]"
- AvantiImg="http://2.bp.blogspot.com/-fE9tzwmjaeQ/UcM2apxDtjI/AAAAAAAAeeg/WKSGM2TADLM/s1600/pager+old.png"
Advertisement
Add Comment
Please, Sign In to add comment