Skip to content

Commit

Permalink
[ie/weverse] Support extraction without auth (yt-dlp#7924)
Browse files Browse the repository at this point in the history
Authored by: seproDev
  • Loading branch information
seproDev authored and aalsuwaidi committed Apr 21, 2024
1 parent d6265f4 commit ce5df25
Showing 1 changed file with 7 additions and 6 deletions.
13 changes: 7 additions & 6 deletions yt_dlp/extractor/weverse.py
Original file line number Diff line number Diff line change
Expand Up @@ -70,10 +70,8 @@ def _real_initialize(self):
return

token = try_call(lambda: self._get_cookies('https://weverse.io/')['we2_access_token'].value)
if not token:
self.raise_login_required()

WeverseBaseIE._API_HEADERS['Authorization'] = f'Bearer {token}'
if token:
WeverseBaseIE._API_HEADERS['Authorization'] = f'Bearer {token}'

def _call_api(self, ep, video_id, data=None, note='Downloading API JSON'):
# Ref: https://ssl.pstatic.net/static/wevweb/2_3_2_11101725/public/static/js/2488.a09b41ff.chunk.js
Expand Down Expand Up @@ -101,11 +99,14 @@ def _call_api(self, ep, video_id, data=None, note='Downloading API JSON'):
self.raise_login_required(
'Session token has expired. Log in again or refresh cookies in browser')
elif isinstance(e.cause, HTTPError) and e.cause.status == 403:
raise ExtractorError('Your account does not have access to this content', expected=True)
if 'Authorization' in self._API_HEADERS:
raise ExtractorError('Your account does not have access to this content', expected=True)
self.raise_login_required()
raise

def _call_post_api(self, video_id):
return self._call_api(f'/post/v1.0/post-{video_id}?fieldSet=postV1', video_id)
path = '' if 'Authorization' in self._API_HEADERS else '/preview'
return self._call_api(f'/post/v1.0/post-{video_id}{path}?fieldSet=postV1', video_id)

def _get_community_id(self, channel):
return str(self._call_api(
Expand Down

0 comments on commit ce5df25

Please sign in to comment.