|
@@ -1626,15 +1626,13 @@ class YoutubeIE(YoutubeBaseInfoExtractor):
|
|
""" Return a string representation of a signature """
|
|
""" Return a string representation of a signature """
|
|
return '.'.join(compat_str(len(part)) for part in example_sig.split('.'))
|
|
return '.'.join(compat_str(len(part)) for part in example_sig.split('.'))
|
|
|
|
|
|
- @classmethod
|
|
|
|
- def _extract_player_info(cls, player_url):
|
|
|
|
- for player_re in cls._PLAYER_INFO_RE:
|
|
|
|
- id_m = re.search(player_re, player_url)
|
|
|
|
- if id_m:
|
|
|
|
- break
|
|
|
|
- else:
|
|
|
|
- raise ExtractorError('Cannot identify player %r' % player_url)
|
|
|
|
- return id_m.group('id')
|
|
|
|
|
|
+ def _extract_player_info(self, player_url):
|
|
|
|
+ try:
|
|
|
|
+ return self._search_regex(
|
|
|
|
+ self._PLAYER_INFO_RE, player_url, 'player info', group='id')
|
|
|
|
+ except ExtractorError as e:
|
|
|
|
+ raise ExtractorError(
|
|
|
|
+ 'Cannot identify player %r' % (player_url,), cause=e)
|
|
|
|
|
|
def _load_player(self, video_id, player_url, fatal=True, player_id=None):
|
|
def _load_player(self, video_id, player_url, fatal=True, player_id=None):
|
|
if not player_id:
|
|
if not player_id:
|