mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-31 06:35:12 +00:00 
			
		
		
		
	[picarto] Extract more metadata (closes #16518)
This commit is contained in:
		| @@ -1,6 +1,7 @@ | ||||
| # coding: utf-8 | ||||
| from __future__ import unicode_literals | ||||
|  | ||||
| import re | ||||
| import time | ||||
|  | ||||
| from .common import InfoExtractor | ||||
| @@ -8,6 +9,7 @@ from ..compat import compat_str | ||||
| from ..utils import ( | ||||
|     ExtractorError, | ||||
|     js_to_json, | ||||
|     try_get, | ||||
|     update_url_query, | ||||
|     urlencode_postdata, | ||||
| ) | ||||
| @@ -32,7 +34,9 @@ class PicartoIE(InfoExtractor): | ||||
|         return False if PicartoVodIE.suitable(url) else super(PicartoIE, cls).suitable(url) | ||||
|  | ||||
|     def _real_extract(self, url): | ||||
|         channel_id = self._match_id(url) | ||||
|         mobj = re.match(self._VALID_URL, url) | ||||
|         channel_id = mobj.group('id') | ||||
|  | ||||
|         metadata = self._download_json( | ||||
|             'https://api.picarto.tv/v1/channel/name/' + channel_id, | ||||
|             channel_id) | ||||
| @@ -45,7 +49,7 @@ class PicartoIE(InfoExtractor): | ||||
|             data=urlencode_postdata({'loadbalancinginfo': channel_id}), | ||||
|             note='Downloading load balancing info') | ||||
|  | ||||
|         token = self._VALID_URL_RE.match(url).group('token') or 'public' | ||||
|         token = mobj.group('token') or 'public' | ||||
|         params = { | ||||
|             'con': int(time.time() * 1000), | ||||
|             'token': token, | ||||
| @@ -99,9 +103,11 @@ class PicartoIE(InfoExtractor): | ||||
|  | ||||
|         return { | ||||
|             'id': channel_id, | ||||
|             'title': self._live_title(channel_id), | ||||
|             'title': self._live_title(metadata.get('title') or channel_id), | ||||
|             'is_live': True, | ||||
|             'thumbnail': metadata.get('thumbnails', {}).get('web'), | ||||
|             'thumbnail': try_get(metadata, lambda x: x['thumbnails']['web']), | ||||
|             'channel': channel_id, | ||||
|             'channel_url': 'https://picarto.tv/%s' % channel_id, | ||||
|             'age_limit': age_limit, | ||||
|             'formats': formats, | ||||
|         } | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Sergey M․
					Sergey M․