diff --git a/lib/onesecmail.py b/lib/onesecmail.py index b3dfd335..21a5c0a4 100644 --- a/lib/onesecmail.py +++ b/lib/onesecmail.py @@ -3,6 +3,7 @@ import string import time from core import httptools +from platformcode import platformtools, config baseUrl = 'https://www.1secmail.com/api/v1/' defDomain = '1secmail.com' @@ -35,15 +36,20 @@ def readLastMessage(mail): return httptools.downloadpage(apiUrl).json -def waitForMail(mail, timeout=10): +def waitForMail(mail, timeout=50): + dialog = platformtools.dialog_progress(config.get_localized_string(20000), + 'verifica tramite mail richiesta dal sito, sono in attesa di nuove mail sulla casella ' + mail) secs = 0 - while secs < 10: + while secs < timeout: msg = readLastMessage(mail) if msg: + dialog.close() return msg else: time.sleep(1) secs += 1 + if dialog.iscanceled(): + break return None def getRandom(len=10): diff --git a/servers/hdmario.py b/servers/hdmario.py index 6314c44c..5f3106f4 100644 --- a/servers/hdmario.py +++ b/servers/hdmario.py @@ -2,17 +2,27 @@ import xbmc from core import httptools, scrapertools, filetools -from platformcode import logger, config +from platformcode import logger, config, platformtools baseUrl = 'https://hdmario.live' def test_video_exists(page_url): - page_url.replace('?', '') logger.info("(page_url='%s')" % page_url) - global data + global page, data page = httptools.downloadpage(page_url) + data = page.data logger.info(page.url) + + if "the page you are looking for could not be found" in data: + return False, config.get_localized_string(70449) % "HDmario" + return True, "" + + +def get_video_url(page_url, premium=False, user="", password="", video_password=""): + global page, data + page_url = page_url.replace('?', '') + logger.info("url=" + page_url) if 'unconfirmed' in page.url: from lib import onesecmail id = page_url.split('/')[-1] @@ -24,20 +34,12 @@ def test_video_exists(page_url): httptools.downloadpage(page.url, post=postData) jsonMail = onesecmail.waitForMail(mail) logger.info(jsonMail) - code = jsonMail['subject'].split(' - ')[0] - page = httptools.downloadpage(page_url + '?code=' + code) - data = page.data - if "the page you are looking for could not be found" in data: - return False, config.get_localized_string(70449) % "HDmario" - return True, "" - - -def get_video_url(page_url, premium=False, user="", password="", video_password=""): - logger.info("url=" + page_url) - global data + if jsonMail: + code = jsonMail['subject'].split(' - ')[0] + page = httptools.downloadpage(page_url + '?code=' + code) + data = page.data logger.info(data) # p,a,c,k,e,d data -> xhr.setRequestHeader - global secureProof, server secureProof = scrapertools.find_single_match(data, '\|(\w{22})\|') logger.info('X-Secure-Proof=' + secureProof)