diff --git a/core/httptools.py b/core/httptools.py index 4a7c6133..2f23cf7b 100755 --- a/core/httptools.py +++ b/core/httptools.py @@ -31,7 +31,7 @@ cookies_file = os.path.join(config.get_data_path(), "cookies.dat") default_headers = dict() default_headers["User-Agent"] = "Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko) Chrome/74.0.3729.169 Safari/537.36" default_headers["Accept"] = "text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,image/apng,*/*;q=0.8" -default_headers["Accept-Language"] = "es-ES,es;q=0.8,en-US;q=0.5,en;q=0.3" +default_headers["Accept-Language"] = "it-IT,it;q=0.8,en-US;q=0.5,en;q=0.3" default_headers["Accept-Charset"] = "UTF-8" default_headers["Accept-Encoding"] = "gzip" diff --git a/platformcode/recaptcha.py b/platformcode/recaptcha.py index b2bd1f58..4748367c 100644 --- a/platformcode/recaptcha.py +++ b/platformcode/recaptcha.py @@ -15,9 +15,9 @@ class Recaptcha(xbmcgui.WindowXMLDialog): self.key = key self.headers = {'Referer': self.referer} - api_js = httptools.downloadpage("http://www.google.com/recaptcha/api.js?hl=" + lang).data + api_js = httptools.downloadpage("https://www.google.com/recaptcha/api.js?hl=" + lang).data version = scrapertools.find_single_match(api_js, 'po.src\s*=\s*\'(.*?)\';').split("/")[5] - self.url = "http://www.google.com/recaptcha/api/fallback?k=" + self.key + "&hl=" + lang + "&v=" + version + "&t=2&ff=true" + self.url = "https://www.google.com/recaptcha/api/fallback?k=" + self.key + "&hl=" + lang + "&v=" + version + "&t=2&ff=true" self.doModal() # Reload if self.result == {}: @@ -31,7 +31,7 @@ class Recaptcha(xbmcgui.WindowXMLDialog): '
(.*?)(?:|
)').replace( "", "[B]").replace("", "[/B]") self.token = scrapertools.find_single_match(data, 'name="c" value="([^"]+)"') - self.image = "http://www.google.com/recaptcha/api2/payload?k=%s&c=%s" % (self.key, self.token) + self.image = "https://www.google.com/recaptcha/api2/payload?k=%s&c=%s" % (self.key, self.token) self.result = {} self.getControl(10020).setImage(self.image) self.getControl(10000).setText(self.message) @@ -58,15 +58,17 @@ class Recaptcha(xbmcgui.WindowXMLDialog): elif control == 10002: self.result = [int(k) for k in range(9) if self.result.get(k, False)] - post = "c=%s" % self.token - - for r in self.result: - post += "&response=%s" % r + post = { + "c": self.token, + "response": self.result + } data = httptools.downloadpage(self.url, post=post, headers=self.headers).data + from platformcode import logger + logger.info(data) self.result = scrapertools.find_single_match(data, '
.*?>([^<]+)<') if self.result: - platformtools.dialog_notification("Captcha Correcto", "La verificación ha concluido") + platformtools.dialog_notification("Captcha corretto", "Verifica conclusa") self.close() else: self.result = {} diff --git a/servers/wstream.py b/servers/wstream.py index 0f90e741..1ea1988f 100644 --- a/servers/wstream.py +++ b/servers/wstream.py @@ -18,7 +18,7 @@ def test_video_exists(page_url): global data,headers page_url = scrapertools.find_single_match(data, r"""
|>)""") + possibleParam = scrapertools.find_multiple_matches(data, + r"""|>)""") if possibleParam: - post = urllib.urlencode({param[0]: param[1] for param in possibleParam if param[0]}) + post = {param[0]: param[1] for param in possibleParam if param[0]} + post['g-recaptcha-response'] = captcha if post: data = httptools.downloadpage(page_url, headers=headers, post=post, follow_redirects=True).data else: @@ -43,9 +47,9 @@ def test_video_exists(page_url): else: int_bckup_method() - if "Not Found" in data or "File was deleted" in data: - return False, config.get_localized_string(70449) % 'Wstream' - return True, "" + if "Not Found" in data or "File was deleted" in data: + return False, config.get_localized_string(70449) % 'Wstream' + return True, "" else: return False, config.get_localized_string(707434)