aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorYen Chi Hsuan <yan12125@gmail.com>2015-04-30 17:05:02 +0800
committerYen Chi Hsuan <yan12125@gmail.com>2015-04-30 17:05:02 +0800
commit621ffe7bf420aa1a227e823edf2f1acbc67660d0 (patch)
tree8846bc1355106febdcd978b76f4fde176f475bb8
parent965cb8d530e4ced61a9bc42530f7f91b67c709e6 (diff)
[niconico] Fix so* video extraction (fixes #4874) (#2087)
-rw-r--r--youtube_dl/extractor/niconico.py17
1 files changed, 16 insertions, 1 deletions
diff --git a/youtube_dl/extractor/niconico.py b/youtube_dl/extractor/niconico.py
index dd16d0042..3cecebf95 100644
--- a/youtube_dl/extractor/niconico.py
+++ b/youtube_dl/extractor/niconico.py
@@ -67,6 +67,18 @@ class NiconicoIE(InfoExtractor):
'timestamp': 1198527840, # timestamp field has different value if logged in
'duration': 304,
},
+ }, {
+ 'url': 'http://www.nicovideo.jp/watch/so22543406',
+ 'info_dict': {
+ 'id': '1388129933',
+ 'ext': 'mp4',
+ 'title': '【第1回】RADIOアニメロミックス ラブライブ!~のぞえりRadio Garden~',
+ 'description': 'md5:b27d224bb0ff53d3c8269e9f8b561cf1',
+ 'timestamp': 1388851200,
+ 'upload_date': '20140104',
+ 'uploader': 'アニメロチャンネル',
+ 'uploader_id': '312',
+ }
}]
_VALID_URL = r'https?://(?:www\.|secure\.)?nicovideo\.jp/watch/(?P<id>(?:[a-z]{2})?[0-9]+)'
@@ -109,7 +121,10 @@ class NiconicoIE(InfoExtractor):
# Get video webpage. We are not actually interested in it for normal
# cases, but need the cookies in order to be able to download the
# info webpage
- webpage = self._download_webpage('http://www.nicovideo.jp/watch/' + video_id, video_id)
+ webpage, handle = self._download_webpage_handle(
+ 'http://www.nicovideo.jp/watch/' + video_id, video_id)
+ if video_id.startswith('so'):
+ video_id = self._match_id(handle.geturl())
video_info = self._download_xml(
'http://ext.nicovideo.jp/api/getthumbinfo/' + video_id, video_id,