|
@ -2,7 +2,6 @@ |
|
|
|
|
|
|
|
|
import re |
|
|
import re |
|
|
import socket |
|
|
import socket |
|
|
import xml.etree.ElementTree |
|
|
|
|
|
|
|
|
|
|
|
from .common import InfoExtractor |
|
|
from .common import InfoExtractor |
|
|
from ..utils import ( |
|
|
from ..utils import ( |
|
@ -81,7 +80,7 @@ class NiconicoIE(InfoExtractor): |
|
|
# the cookies in order to be able to download the info webpage |
|
|
# the cookies in order to be able to download the info webpage |
|
|
self._download_webpage('http://www.nicovideo.jp/watch/' + video_id, video_id) |
|
|
self._download_webpage('http://www.nicovideo.jp/watch/' + video_id, video_id) |
|
|
|
|
|
|
|
|
video_info_webpage = self._download_webpage( |
|
|
|
|
|
|
|
|
video_info = self._download_xml( |
|
|
'http://ext.nicovideo.jp/api/getthumbinfo/' + video_id, video_id, |
|
|
'http://ext.nicovideo.jp/api/getthumbinfo/' + video_id, video_id, |
|
|
note=u'Downloading video info page') |
|
|
note=u'Downloading video info page') |
|
|
|
|
|
|
|
@ -92,7 +91,6 @@ class NiconicoIE(InfoExtractor): |
|
|
video_real_url = compat_urlparse.parse_qs(flv_info_webpage)['url'][0] |
|
|
video_real_url = compat_urlparse.parse_qs(flv_info_webpage)['url'][0] |
|
|
|
|
|
|
|
|
# Start extracting information |
|
|
# Start extracting information |
|
|
video_info = xml.etree.ElementTree.fromstring(video_info_webpage) |
|
|
|
|
|
video_title = video_info.find('.//title').text |
|
|
video_title = video_info.find('.//title').text |
|
|
video_extension = video_info.find('.//movie_type').text |
|
|
video_extension = video_info.find('.//movie_type').text |
|
|
video_format = video_extension.upper() |
|
|
video_format = video_extension.upper() |
|
@ -107,13 +105,11 @@ class NiconicoIE(InfoExtractor): |
|
|
video_uploader = video_uploader_id |
|
|
video_uploader = video_uploader_id |
|
|
url = 'http://seiga.nicovideo.jp/api/user/info?id=' + video_uploader_id |
|
|
url = 'http://seiga.nicovideo.jp/api/user/info?id=' + video_uploader_id |
|
|
try: |
|
|
try: |
|
|
user_info_webpage = self._download_webpage( |
|
|
|
|
|
|
|
|
user_info = self._download_xml( |
|
|
url, video_id, note=u'Downloading user information') |
|
|
url, video_id, note=u'Downloading user information') |
|
|
|
|
|
video_uploader = user_info.find('.//nickname').text |
|
|
except (compat_urllib_error.URLError, compat_http_client.HTTPException, socket.error) as err: |
|
|
except (compat_urllib_error.URLError, compat_http_client.HTTPException, socket.error) as err: |
|
|
self._downloader.report_warning(u'Unable to download user info webpage: %s' % compat_str(err)) |
|
|
self._downloader.report_warning(u'Unable to download user info webpage: %s' % compat_str(err)) |
|
|
else: |
|
|
|
|
|
user_info = xml.etree.ElementTree.fromstring(user_info_webpage) |
|
|
|
|
|
video_uploader = user_info.find('.//nickname').text |
|
|
|
|
|
|
|
|
|
|
|
return { |
|
|
return { |
|
|
'id': video_id, |
|
|
'id': video_id, |
|
|