diff --git a/servers/wstream.py b/servers/wstream.py
index 1ea1988f..81148ada 100644
--- a/servers/wstream.py
+++ b/servers/wstream.py
@@ -19,37 +19,37 @@ def test_video_exists(page_url):
page_url = scrapertools.find_single_match(data, r"""
|>)""")
- if possibleParam:
- 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:
- int_bckup_method()
- else:
+ sitekey = scrapertools.find_single_match(data, 'data-sitekey="([^"]+)')
+ captcha = platformtools.show_recaptcha(sitekey, page_url) if sitekey else ''
+
+ page_url = resp.url
+ if '/streaming.php' in page_url in page_url:
+ code = httptools.downloadpage(page_url, headers=headers, follow_redirects=False).headers['location'].split('/')[-1].replace('.html', '')
+ logger.info('WCODE=' + code)
+ page_url = 'https://wstream.video/video.php?file_code=' + code
+ data = httptools.downloadpage(page_url, headers=headers, follow_redirects=True).data
+
+ possibleParam = scrapertools.find_multiple_matches(data, r"""|>)""")
+ if possibleParam:
+ post = {param[0]: param[1] for param in possibleParam if param[0]}
+ if captcha: post['g-recaptcha-response'] = captcha
+ if post:
+ data = httptools.downloadpage(page_url, headers=headers, post=post, follow_redirects=True).data
+ elif captcha:
int_bckup_method()
+ elif captcha:
+ 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)