Browse Source

[nhk] fix video extraction(closes #22249)(closes #22353)

master
Remita Amine 5 years ago
parent
commit
a373befa25
2 changed files with 13 additions and 5 deletions
  1. 4
      youtube_dl/extractor/nhk.py
  2. 14
      youtube_dl/extractor/piksel.py

4
youtube_dl/extractor/nhk.py

@ -60,8 +60,8 @@ class NhkVodIE(InfoExtractor):
if is_video: if is_video:
info.update({ info.update({
'_type': 'url_transparent', '_type': 'url_transparent',
'ie_key': 'Ooyala',
'url': 'ooyala:' + episode['vod_id'],
'ie_key': 'Piksel',
'url': 'https://player.piksel.com/v/refid/nhkworld/prefid/' + episode['vod_id'],
}) })
else: else:
audio = episode['audio'] audio = episode['audio']

14
youtube_dl/extractor/piksel.py

@ -15,7 +15,7 @@ from ..utils import (
class PikselIE(InfoExtractor): class PikselIE(InfoExtractor):
_VALID_URL = r'https?://player\.piksel\.com/v/(?P<id>[a-z0-9]+)'
_VALID_URL = r'https?://player\.piksel\.com/v/(?:refid/[^/]+/prefid/)?(?P<id>[a-z0-9_]+)'
_TESTS = [ _TESTS = [
{ {
'url': 'http://player.piksel.com/v/ums2867l', 'url': 'http://player.piksel.com/v/ums2867l',
@ -40,6 +40,11 @@ class PikselIE(InfoExtractor):
'timestamp': 1486171129, 'timestamp': 1486171129,
'upload_date': '20170204' 'upload_date': '20170204'
} }
},
{
# https://www3.nhk.or.jp/nhkworld/en/ondemand/video/2019240/
'url': 'http://player.piksel.com/v/refid/nhkworld/prefid/nw_vod_v_en_2019_240_20190823233000_02_1566873477',
'only_matching': True,
} }
] ]
@ -52,8 +57,11 @@ class PikselIE(InfoExtractor):
return mobj.group('url') return mobj.group('url')
def _real_extract(self, url): def _real_extract(self, url):
video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id)
display_id = self._match_id(url)
webpage = self._download_webpage(url, display_id)
video_id = self._search_regex(
r'data-de-program-uuid=[\'"]([a-z0-9]+)',
webpage, 'program uuid', default=display_id)
app_token = self._search_regex([ app_token = self._search_regex([
r'clientAPI\s*:\s*"([^"]+)"', r'clientAPI\s*:\s*"([^"]+)"',
r'data-de-api-key\s*=\s*"([^"]+)"' r'data-de-api-key\s*=\s*"([^"]+)"'

Loading…
Cancel
Save