1
0
mirror of https://github.com/l1ving/youtube-dl synced 2024-11-20 20:42:52 +08:00

[newgrounds] simplify

This commit is contained in:
Philipp Hagemeister 2013-09-18 22:14:43 +02:00
parent a19413c311
commit d0ae9e3a8d

View File

@ -4,6 +4,7 @@ import re
from .common import InfoExtractor from .common import InfoExtractor
from ..utils import determine_ext from ..utils import determine_ext
class NewgroundsIE(InfoExtractor): class NewgroundsIE(InfoExtractor):
_VALID_URL = r'(?:https?://)?(?:www\.)?newgrounds\.com/audio/listen/(?P<id>\d+)' _VALID_URL = r'(?:https?://)?(?:www\.)?newgrounds\.com/audio/listen/(?P<id>\d+)'
_TEST = { _TEST = {
@ -12,7 +13,7 @@ class NewgroundsIE(InfoExtractor):
u'md5': u'fe6033d297591288fa1c1f780386f07a', u'md5': u'fe6033d297591288fa1c1f780386f07a',
u'info_dict': { u'info_dict': {
u"title": u"B7 - BusMode", u"title": u"B7 - BusMode",
u"uploader" : u"Burn7", u"uploader": u"Burn7",
} }
} }
@ -21,17 +22,17 @@ class NewgroundsIE(InfoExtractor):
music_id = mobj.group('id') music_id = mobj.group('id')
webpage = self._download_webpage(url, music_id) webpage = self._download_webpage(url, music_id)
title = self._html_search_regex(r',"name":"([^"]+)",', webpage, 'music title', flags=re.DOTALL) title = self._html_search_regex(r',"name":"([^"]+)",', webpage, u'music title')
uploader = self._html_search_regex(r',"artist":"([^"]+)",', webpage, 'music uploader', flags=re.DOTALL) uploader = self._html_search_regex(r',"artist":"([^"]+)",', webpage, u'music uploader')
music_url_json_string = '{"url":"' + self._html_search_regex(r'{"url":"([^"]+)",', webpage, 'music url', flags=re.DOTALL) + '"}' music_url_json_string = self._html_search_regex(r'({"url":"[^"]+"),', webpage, u'music url') + '}'
music_url_json = json.loads(music_url_json_string) music_url_json = json.loads(music_url_json_string)
music_url = music_url_json['url'] music_url = music_url_json['url']
return [{ return {
'id': music_id, 'id': music_id,
'title': title, 'title': title,
'url': music_url, 'url': music_url,
'uploader': uploader, 'uploader': uploader,
'ext': determine_ext(music_url), 'ext': determine_ext(music_url),
}] }