1
0
mirror of https://github.com/l1ving/youtube-dl synced 2024-11-22 01:13:00 +08:00

[newgrounds] Simplify

This commit is contained in:
Philipp Hagemeister 2014-01-22 21:41:28 +01:00
parent c4cd138b92
commit bd2d82a5d3

View File

@ -1,3 +1,5 @@
from __future__ import unicode_literals
import json import json
import re import re
@ -8,12 +10,12 @@ 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 = {
u'url': u'http://www.newgrounds.com/audio/listen/549479', 'url': 'http://www.newgrounds.com/audio/listen/549479',
u'file': u'549479.mp3', 'file': '549479.mp3',
u'md5': u'fe6033d297591288fa1c1f780386f07a', 'md5': 'fe6033d297591288fa1c1f780386f07a',
u'info_dict': { 'info_dict': {
u"title": u"B7 - BusMode", "title": "B7 - BusMode",
u"uploader": u"Burn7", "uploader": "Burn7",
} }
} }
@ -22,17 +24,19 @@ 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, u'music title') title = self._html_search_regex(
uploader = self._html_search_regex(r',"artist":"([^"]+)",', webpage, u'music uploader') r',"name":"([^"]+)",', webpage, 'music title')
uploader = self._html_search_regex(
r',"artist":"([^"]+)",', webpage, 'music uploader')
music_url_json_string = self._html_search_regex(r'({"url":"[^"]+"),', webpage, u'music url') + '}' music_url_json_string = self._html_search_regex(
r'({"url":"[^"]+"),', webpage, '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),
} }