[myspace] Improve _VALID_URL (closes #13040)

pull/13053/head^2
Sergey M․ 8 years ago
parent 39ee263819
commit 3166b1f0ac
No known key found for this signature in database
GPG Key ID: 2C393E0F18A9236D

@ -12,10 +12,16 @@ from ..utils import (
class MySpaceIE(InfoExtractor): class MySpaceIE(InfoExtractor):
_VALID_URL = r'https?://myspace\.com/([^/]+)/(?P<mediatype>video/[^/]+/|music/song/.*?)(?P<id>\d+)' _VALID_URL = r'''(?x)
https?://
myspace\.com/[^/]+/
(?P<mediatype>
video/[^/]+/(?P<video_id>\d+)|
music/song/[^/?#&]+-(?P<song_id>\d+)-\d+(?:[/?#&]|$)
)
'''
_TESTS = [ _TESTS = [{
{
'url': 'https://myspace.com/fiveminutestothestage/video/little-big-town/109594919', 'url': 'https://myspace.com/fiveminutestothestage/video/little-big-town/109594919',
'md5': '9c1483c106f4a695c47d2911feed50a7', 'md5': '9c1483c106f4a695c47d2911feed50a7',
'info_dict': { 'info_dict': {
@ -28,9 +34,8 @@ class MySpaceIE(InfoExtractor):
'timestamp': 1414108751, 'timestamp': 1414108751,
'upload_date': '20141023', 'upload_date': '20141023',
}, },
}, }, {
# songs # songs
{
'url': 'https://myspace.com/killsorrow/music/song/of-weakened-soul...-93388656-103880681', 'url': 'https://myspace.com/killsorrow/music/song/of-weakened-soul...-93388656-103880681',
'md5': '1d7ee4604a3da226dd69a123f748b262', 'md5': '1d7ee4604a3da226dd69a123f748b262',
'info_dict': { 'info_dict': {
@ -53,23 +58,16 @@ class MySpaceIE(InfoExtractor):
'upload_date': '20091002', 'upload_date': '20091002',
}, },
}, { }, {
'add_ie': ['Youtube'],
'url': 'https://myspace.com/starset2/music/song/first-light-95799905-106964426', 'url': 'https://myspace.com/starset2/music/song/first-light-95799905-106964426',
'info_dict': { 'only_matching': True,
'id': 'ypWvQgnJrSU', }, {
'ext': 'mp4', 'url': 'https://myspace.com/thelargemouthbassband/music/song/02-pure-eyes.mp3-94422330-105113388',
'title': 'Starset - First Light', 'only_matching': True,
'description': 'md5:2d5db6c9d11d527683bcda818d332414', }]
'uploader': 'Yumi K',
'uploader_id': 'SorenPromotions',
'upload_date': '20140725',
}
},
]
def _real_extract(self, url): def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url) mobj = re.match(self._VALID_URL, url)
video_id = mobj.group('id') video_id = mobj.group('video_id') or mobj.group('song_id')
is_song = mobj.group('mediatype').startswith('music/song') is_song = mobj.group('mediatype').startswith('music/song')
webpage = self._download_webpage(url, video_id) webpage = self._download_webpage(url, video_id)
player_url = self._search_regex( player_url = self._search_regex(

Loading…
Cancel
Save