diff --git a/channels.json b/channels.json
index 87c0004f..fe68161b 100644
--- a/channels.json
+++ b/channels.json
@@ -47,7 +47,7 @@
},
"findhost": {
"altadefinizioneclick": "https://altadefinizione-nuovo.click",
- "altadefinizionecommunity": "https://altaregistrazione.com",
+ "altadefinizionecommunity": "https://altaregistrazione.net",
"filmpertutti": "https://filmpertuttiii.nuovo.live",
"streamingcommunity": "https://streamingcommunity-nuovo.link"
}
diff --git a/channels/altadefinizionecommunity.py b/channels/altadefinizionecommunity.py
index e72b81aa..8fd35be2 100644
--- a/channels/altadefinizionecommunity.py
+++ b/channels/altadefinizionecommunity.py
@@ -9,11 +9,13 @@ from core import scrapertools, httptools
def findhost(url):
+ global register_url
+ register_url = url
return support.match(url, patron=r'Accedi').match
host = config.get_channel_url(findhost)
-register_url = 'https://altaregistrazione.com'
+# register_url = 'https://altaregistrazione.com'
headers = {'Referer': host, 'x-requested-with': 'XMLHttpRequest'}
@@ -44,7 +46,7 @@ def mainlist(item):
def login():
r = support.httptools.downloadpage(host, cloudscraper=True)
Token = support.match(r.data, patron=r'name=\s*"_token"\s*value=\s*"([^"]+)', cloudscraper=True).match
- if 'id="logged"' in r.text:
+ if 'id="logged"' in r.data:
logger.info('GiĆ loggato')
else:
logger.info('Login in corso')
@@ -54,11 +56,11 @@ def login():
'password':config.get_setting('password', channel='altadefinizionecommunity')}
r = support.httptools.downloadpage(host + '/login', post=post, headers={'referer': host}, cloudscraper=True)
- if not r.status_code in [200, 302] or 'Email o Password non validi' in r.text:
+ if not r.status_code in [200, 302] or 'Email o Password non validi' in r.data:
platformtools.dialog_ok('AltadefinizioneCommunity', 'Username/password non validi')
return False
- return 'id="logged"' in r.text
+ return 'id="logged"' in r.data
def registerOrLogin():
@@ -139,17 +141,20 @@ def movies(item):
action = 'findvideos'
else:
action = 'episodes'
+ try:
+ if '/load-more-film' not in item.url and '/search' not in item.url: # generi o altri menu, converto
+ import ast
+ ajax = support.match(item.url, patron='ajax_data\s*=\s*"?\s*([^;]+)', cloudscraper=True).match
+ item.url = host + '/load-more-film?' + support.urlencode(ast.literal_eval(ajax)) + '&page=1'
+ if not '/search' in item.url:
+ json = support.httptools.downloadpage(item.url, headers=headers, cloudscraper=True).json
+ data = "\n".join(json['data'])
+ else:
+ json = support.httptools.downloadpage(item.url, headers=headers, cloudscraper=True).json
+ data = "\n".join(json['data'])
+ except:
+ data = ' '
- if '/load-more-film' not in item.url and '/search' not in item.url: # generi o altri menu, converto
- import ast
- ajax = support.match(item.url, patron='ajax_data\s*=\s*"?\s*([^;]+)', cloudscraper=True).match
- item.url = host + '/load-more-film?' + support.urlencode(ast.literal_eval(ajax)) + '&page=1'
- if not '/search' in item.url:
- json = support.httptools.downloadpage(item.url, headers=headers, cloudscraper=True).json
- data = "\n".join(json['data'])
- else:
- json = support.httptools.downloadpage(item.url, headers=headers, cloudscraper=True).json
- data = "\n".join(json['data'])
patron = r'wrapFilm">\s*\s*(?P[0-9]{4})\s*]+>(?P[^<]+)\s*(?P[^<]+)(?:[^>]+>){2}\s*
]+>){1,6}\s*(?P[^<[]+)(?:\[(?P[sSuUbBiItTaA-]+))?'
# paginazione
@@ -233,6 +238,7 @@ def check(item):
def findvideos(item):
itemlist = []
+ # logger.dbg()
resolve_url(item)
itemlist.append(item.clone(action='play', url=support.match(item.url, patron='allowfullscreen[^<]+src="([^"]+)"', cloudscraper=True).match, quality=''))
@@ -252,8 +258,11 @@ def play(item):
def resolve_url(item):
+ registerOrLogin()
if '/watch-unsubscribed' not in item.url and '/watch-external' not in item.url:
- playWindow = support.match(support.httptools.downloadpage(item.url, cloudscraper=True).data, patron='playWindow" href="([^"]+)')
+ data = support.httptools.downloadpage(item.url, headers=headers, cloudscraper=True).data
+ logger.debug()
+ playWindow = support.match(data, patron='playWindow" href="([^"]+)')
video_url = playWindow.match
item.data = playWindow.data
item.url = video_url.replace('/watch-unsubscribed', '/watch-external')
diff --git a/servers/hdmario.py b/servers/hdmario.py
index c7786973..4df704d3 100644
--- a/servers/hdmario.py
+++ b/servers/hdmario.py
@@ -106,6 +106,7 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
global page, data
page_url = page_url.replace('?', '')
logger.debug("url=" + page_url)
+ logger.dbg()
if 'unconfirmed' in page.url:
id = page_url.split('/')[-1]
@@ -132,7 +133,7 @@ def get_video_url(page_url, premium=False, user="", password="", video_password=
logger.debug(data)
from lib import jsunpack_js2py
- unpacked = jsunpack_js2py.unpack(scrapertools.find_single_match(data, '