aboutsummaryrefslogtreecommitdiffstats
path: root/yt_dlp/extractor/adobepass.py
diff options
context:
space:
mode:
Diffstat (limited to 'yt_dlp/extractor/adobepass.py')
-rw-r--r--yt_dlp/extractor/adobepass.py26
1 files changed, 16 insertions, 10 deletions
diff --git a/yt_dlp/extractor/adobepass.py b/yt_dlp/extractor/adobepass.py
index f0eba8844..5d98301b8 100644
--- a/yt_dlp/extractor/adobepass.py
+++ b/yt_dlp/extractor/adobepass.py
@@ -1650,21 +1650,27 @@ class AdobePassIE(InfoExtractor):
hidden_data = self._hidden_inputs(first_bookend_page)
hidden_data['history_val'] = 1
- provider_login_redirect_page = self._download_webpage(
+ provider_login_redirect_page_res = self._download_webpage_handle(
urlh.geturl(), video_id, 'Sending First Bookend',
query=hidden_data)
- provider_tryauth_url = self._html_search_regex(
- r'url:\s*[\'"]([^\'"]+)', provider_login_redirect_page, 'ajaxurl')
+ provider_login_redirect_page, urlh = provider_login_redirect_page_res
- provider_tryauth_page = self._download_webpage(
- provider_tryauth_url, video_id, 'Submitting TryAuth',
- query=hidden_data)
+ # Some website partners seem to not have the extra ajaxurl redirect step, so we check if we already
+ # have the login prompt or not
+ if 'id="password" type="password" name="password"' in provider_login_redirect_page:
+ provider_login_page_res = provider_login_redirect_page_res
+ else:
+ provider_tryauth_url = self._html_search_regex(
+ r'url:\s*[\'"]([^\'"]+)', provider_login_redirect_page, 'ajaxurl')
+ provider_tryauth_page = self._download_webpage(
+ provider_tryauth_url, video_id, 'Submitting TryAuth',
+ query=hidden_data)
- provider_login_page_res = self._download_webpage_handle(
- f'https://authorize.suddenlink.net/saml/module.php/authSynacor/login.php?AuthState={provider_tryauth_page}',
- video_id, 'Getting Login Page',
- query=hidden_data)
+ provider_login_page_res = self._download_webpage_handle(
+ f'https://authorize.suddenlink.net/saml/module.php/authSynacor/login.php?AuthState={provider_tryauth_page}',
+ video_id, 'Getting Login Page',
+ query=hidden_data)
provider_association_redirect, urlh = post_form(
provider_login_page_res, 'Logging in', {