1
0
mirror of https://github.com/yt-dlp/yt-dlp.git synced 2024-11-02 17:22:31 +01:00

[twitter:card] Generalize base API URL

This commit is contained in:
Sergey M․ 2018-06-03 15:58:12 +07:00
parent b6b2ccb72f
commit 77053237c5
No known key found for this signature in database
GPG Key ID: 2C393E0F18A9236D

View File

@ -108,6 +108,8 @@ class TwitterCardIE(TwitterBaseIE):
},
]
_API_BASE = 'https://api.twitter.com/1.1'
def _parse_media_info(self, media_info, video_id):
formats = []
for media_variant in media_info.get('variants', []):
@ -149,7 +151,7 @@ def _extract_mobile_formats(self, username, video_id):
main_script, 'bearer token')
# https://developer.twitter.com/en/docs/tweets/post-and-engage/api-reference/get-statuses-show-id
api_data = self._download_json(
'https://api.twitter.com/1.1/statuses/show/%s.json' % video_id,
'%s/statuses/show/%s.json' % (self._API_BASE, video_id),
video_id, 'Downloading API data',
headers={
'Authorization': 'Bearer ' + bearer_token,
@ -237,13 +239,13 @@ def _real_extract(self, url):
if ct0:
headers['csrf_token'] = ct0.value
guest_token = self._download_json(
'https://api.twitter.com/1.1/guest/activate.json', video_id,
'%s/guest/activate.json' % self._API_BASE, video_id,
'Downloading guest token', data=b'',
headers=headers)['guest_token']
headers['x-guest-token'] = guest_token
self._set_cookie('api.twitter.com', 'gt', guest_token)
config = self._download_json(
'https://api.twitter.com/1.1/videos/tweet/config/%s.json' % video_id,
'%s/videos/tweet/config/%s.json' % (self._API_BASE, video_id),
video_id, headers=headers)
track = config['track']
vmap_url = track.get('vmapUrl')