From ba25952b6faf5c5f38e8ac38b3b0b4b4f218e31e Mon Sep 17 00:00:00 2001 From: flanter21 <139064898+flanter21@users.noreply.github.com> Date: Wed, 16 Jul 2025 15:40:13 +0300 Subject: [PATCH] Use `jwt_decode_hs256` instead of current solution Co-authored-by: bashonly <88596187+bashonly@users.noreply.github.com> --- yt_dlp/extractor/blackboardcollaborate.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/yt_dlp/extractor/blackboardcollaborate.py b/yt_dlp/extractor/blackboardcollaborate.py index 1761d6ada8..31597c927d 100644 --- a/yt_dlp/extractor/blackboardcollaborate.py +++ b/yt_dlp/extractor/blackboardcollaborate.py @@ -165,8 +165,8 @@ class BlackboardCollaborateLaunchIE(InfoExtractor): ] def _real_extract(self, url): - token = self._match_valid_url(url)['token'] - video_id = traverse_obj(json.loads(base64.b64decode(token.split('.')[1] + '===')), ('resourceAccessTicket', 'resourceId')) + token = self._match_id(url) + video_id = jwt_decode_hs256(token)['resourceAccessTicket']['resourceId'] redirect_url = self._request_webpage(url, video_id=video_id).url return self.url_result(redirect_url,