From d254e8f77abdd18189f64a35c4096b50a106c660 Mon Sep 17 00:00:00 2001 From: Alhaziel Date: Fri, 4 Oct 2019 17:08:44 +0200 Subject: [PATCH] Fix AnimePerTutti --- channels/animeleggendari.json | 4 +-- channels/animeleggendari.py | 58 ++++++++++++++++++++++++++--------- 2 files changed, 45 insertions(+), 17 deletions(-) diff --git a/channels/animeleggendari.json b/channels/animeleggendari.json index ca862d80..24509255 100644 --- a/channels/animeleggendari.json +++ b/channels/animeleggendari.json @@ -3,9 +3,9 @@ "name": "AnimePerTutti", "active": true, "adult": false, - "language": ["ita"], + "language": ["ita", "vosi"], "thumbnail": "animepertutti.png", "bannermenu": "animepertutti.png", - "categories": ["anime"], + "categories": ["anime", "vos"], "settings": [] } diff --git a/channels/animeleggendari.py b/channels/animeleggendari.py index 04acc7b8..b753b3e1 100644 --- a/channels/animeleggendari.py +++ b/channels/animeleggendari.py @@ -75,27 +75,55 @@ def peliculas(item): @support.scrape def episodios(item): - url = item.url - anime = True - patronBlock = r'(?:

|

' - patron = r'(?:]+>)?(?P\d+)' - def itemHook(item): - if not item.url: - item.url = url - item.title = support.typo('Episodio ', 'bold') + item.title - return item + data = support.match(item, headers=headers)[1] + if 'Lista Episodi' not in data: + patron = r'(?:iframe src|str)="(?P[^"]+)"' + title = item.title + def fullItemlistHook(itemlist): + url = '' + for item in itemlist: + url += item.url +'\n' + item = itemlist[0] + item.data = url + item.title = title + item.contentType = 'movie' + itemlist = [] + itemlist.append(item) + return itemlist + else: + url = item.url + anime = True + patronBlock = r'(?:

|

' + patron = r'(?:]+>)?(?P\d+)' + def itemHook(item): + if not item.url: + item.url = url + item.title = support.typo('Episodio ', 'bold') + item.title + return item return locals() +def check(item): + data = support.match(item, headers=headers)[1] + if 'Lista Episodi' not in data: + item.data = data + return findvideos(item) + + data = '' + return data def findvideos(item): support.log() - data = '' - matches = support.match(item, 'str="([^"]+)"')[0] - if matches: - for match in matches: - data += str(jsfunctions.unescape(support.re.sub('@|g','%', match))) - data += str(match) + if item.data: + data = item.data else: + matches = support.match(item, '(?:str="([^"]+)"|iframe src="([^"]+)")')[0] data = '' + if matches: + for match in matches: + try: data += str(jsfunctions.unescape(support.re.sub('@|g','%', match))) + except: data += '' + data += str(match) + else: + data = '' return support.server(item,data)