aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorSergey M․ <dstftw@gmail.com>2018-02-10 17:23:37 +0700
committerSergey M․ <dstftw@gmail.com>2018-02-10 17:23:37 +0700
commitd2b200eef9b3346f2e54ebf150b143253b85cbbd (patch)
tree9011db7144fd8ce2b6114d930cc6817c8670fb80
parenta03a3c80fe7174e200af32425a77bfa2bde980d8 (diff)
downloadyoutube-dl-d2b200eef9b3346f2e54ebf150b143253b85cbbd.tar.xz
[periscope] Use accessVideoPublic endpoint (closes #15554)
-rw-r--r--youtube_dl/extractor/periscope.py19
1 files changed, 7 insertions, 12 deletions
diff --git a/youtube_dl/extractor/periscope.py b/youtube_dl/extractor/periscope.py
index e5e08538c..8afe541ec 100644
--- a/youtube_dl/extractor/periscope.py
+++ b/youtube_dl/extractor/periscope.py
@@ -56,18 +56,16 @@ class PeriscopeIE(PeriscopeBaseIE):
def _real_extract(self, url):
token = self._match_id(url)
- broadcast_data = self._call_api(
- 'getBroadcastPublic', {'broadcast_id': token}, token)
- broadcast = broadcast_data['broadcast']
- status = broadcast['status']
+ stream = self._call_api(
+ 'accessVideoPublic', {'broadcast_id': token}, token)
- user = broadcast_data.get('user', {})
+ broadcast = stream['broadcast']
+ title = broadcast['status']
- uploader = broadcast.get('user_display_name') or user.get('display_name')
- uploader_id = (broadcast.get('username') or user.get('username') or
- broadcast.get('user_id') or user.get('id'))
+ uploader = broadcast.get('user_display_name') or broadcast.get('username')
+ uploader_id = (broadcast.get('user_id') or broadcast.get('username'))
- title = '%s - %s' % (uploader, status) if uploader else status
+ title = '%s - %s' % (uploader, title) if uploader else title
state = broadcast.get('state').lower()
if state == 'running':
title = self._live_title(title)
@@ -77,9 +75,6 @@ class PeriscopeIE(PeriscopeBaseIE):
'url': broadcast[image],
} for image in ('image_url', 'image_url_small') if broadcast.get(image)]
- stream = self._call_api(
- 'getAccessPublic', {'broadcast_id': token}, token)
-
video_urls = set()
formats = []
for format_id in ('replay', 'rtmp', 'hls', 'https_hls', 'lhls', 'lhlsweb'):