# -*- coding: utf-8 -*- # ------------------------------------------------------------ # Canale per AnimeSaturn # ---------------------------------------------------------- from core import support host = support.config.get_channel_url() __channel__ = 'animesaturn' cookie = support.config.get_setting('cookie', __channel__) headers = {'X-Requested-With': 'XMLHttpRequest', 'Cookie': cookie} def get_cookie(data): global cookie, headers cookie = support.match(data, patron=r'document.cookie="([^\s]+)').match support.config.set_setting('cookie', cookie, __channel__) headers = [['Cookie', cookie]] def get_data(item): # support.dbg() # url = support.match(item.url, headers=headers, follow_redirects=True, only_headers=True).url data = support.match(item.url, headers=headers, follow_redirects=True).data if 'ASCookie' in data: get_cookie(data) data = get_data(item) return data @support.menu def mainlist(item): anime = ['/animelist?load_all=1&d=1', ('ITA',['', 'submenu', '/filter?language%5B0%5D=1']), ('SUB-ITA',['', 'submenu', '/filter?language%5B0%5D=0']), ('Più Votati',['/toplist','menu', 'top']), ('In Corso',['/animeincorso','peliculas','incorso']), ('Ultimi Episodi',['/fetch_pages.php?request=episodes&d=1','peliculas','updated'])] return locals() def search(item, texto): support.info(texto) item.url = host + '/animelist?search=' + texto item.contentType = 'tvshow' try: return peliculas(item) # Continua la ricerca in caso di errore except: import sys for line in sys.exc_info(): support.logger.error("%s" % line) return [] def newest(categoria): support.info() itemlist = [] item = support.Item() try: if categoria == "anime": item.url = host + '/fetch_pages.php?request=episodes&d=1' item.args = "updated" return peliculas(item) # Continua la ricerca in caso di errore except: import sys for line in sys.exc_info(): support.logger.error("{0}".format(line)) return [] return itemlist @support.scrape def submenu(item): data = support.match(item.url + item.args).data action = 'filter' patronMenu = r'