[periscope] Use accessVideoPublic endpoint (closes #15554)

This commit is contained in:
Sergey M․ 2018-02-10 17:23:37 +07:00
parent a03a3c80fe
commit d2b200eef9
No known key found for this signature in database
GPG Key ID: 2C393E0F18A9236D

View File

@ -56,18 +56,16 @@ def _extract_url(webpage):
def _real_extract(self, url): def _real_extract(self, url):
token = self._match_id(url) token = self._match_id(url)
broadcast_data = self._call_api( stream = self._call_api(
'getBroadcastPublic', {'broadcast_id': token}, token) 'accessVideoPublic', {'broadcast_id': token}, token)
broadcast = broadcast_data['broadcast']
status = broadcast['status']
user = broadcast_data.get('user', {}) broadcast = stream['broadcast']
title = broadcast['status']
uploader = broadcast.get('user_display_name') or user.get('display_name') uploader = broadcast.get('user_display_name') or broadcast.get('username')
uploader_id = (broadcast.get('username') or user.get('username') or uploader_id = (broadcast.get('user_id') or broadcast.get('username'))
broadcast.get('user_id') or user.get('id'))
title = '%s - %s' % (uploader, status) if uploader else status title = '%s - %s' % (uploader, title) if uploader else title
state = broadcast.get('state').lower() state = broadcast.get('state').lower()
if state == 'running': if state == 'running':
title = self._live_title(title) title = self._live_title(title)
@ -77,9 +75,6 @@ def _real_extract(self, url):
'url': broadcast[image], 'url': broadcast[image],
} for image in ('image_url', 'image_url_small') if broadcast.get(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() video_urls = set()
formats = [] formats = []
for format_id in ('replay', 'rtmp', 'hls', 'https_hls', 'lhls', 'lhlsweb'): for format_id in ('replay', 'rtmp', 'hls', 'https_hls', 'lhls', 'lhlsweb'):