diff options
author | bashonly <88596187+bashonly@users.noreply.github.com> | 2024-02-24 17:11:28 -0600 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-02-24 23:11:28 +0000 |
commit | b05640d532c43a52c0a0da096bb2dbd51e105ec0 (patch) | |
tree | 4034fd18fd3f02646b25a4a1080456b2341b2204 | |
parent | 7a29cbbd5fd7363e7e8535ee1506b7052465d13f (diff) |
[ie/swearnet] Raise for login required (#9281)
Closes #9110
Authored by: bashonly
-rw-r--r-- | yt_dlp/extractor/swearnet.py | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/yt_dlp/extractor/swearnet.py b/yt_dlp/extractor/swearnet.py index 6e216a2a5..aeaff28f2 100644 --- a/yt_dlp/extractor/swearnet.py +++ b/yt_dlp/extractor/swearnet.py @@ -1,5 +1,5 @@ from .common import InfoExtractor -from ..utils import int_or_none, traverse_obj +from ..utils import ExtractorError, int_or_none, traverse_obj class SwearnetEpisodeIE(InfoExtractor): @@ -51,7 +51,13 @@ class SwearnetEpisodeIE(InfoExtractor): display_id, season_number, episode_number = self._match_valid_url(url).group('id', 'season_num', 'episode_num') webpage = self._download_webpage(url, display_id) - external_id = self._search_regex(r'externalid\s*=\s*"([^"]+)', webpage, 'externalid') + try: + external_id = self._search_regex(r'externalid\s*=\s*"([^"]+)', webpage, 'externalid') + except ExtractorError: + if 'Upgrade Now' in webpage: + self.raise_login_required() + raise + json_data = self._download_json( f'https://play.vidyard.com/player/{external_id}.json', display_id)['payload']['chapters'][0] |