Browse Source

[wimp] Fix extraction and update _TESTS

master
Yen Chi Hsuan 8 years ago
parent
commit
efbd1eb51a
No known key found for this signature in database GPG Key ID: 3FDDD575826C5C30
1 changed files with 18 additions and 15 deletions
  1. 33
      youtube_dl/extractor/wimp.py

33
youtube_dl/extractor/wimp.py

@ -1,29 +1,33 @@
from __future__ import unicode_literals from __future__ import unicode_literals
from .common import InfoExtractor
from .youtube import YoutubeIE from .youtube import YoutubeIE
from .jwplatform import JWPlatformBaseIE
class WimpIE(InfoExtractor):
class WimpIE(JWPlatformBaseIE):
_VALID_URL = r'https?://(?:www\.)?wimp\.com/(?P<id>[^/]+)' _VALID_URL = r'https?://(?:www\.)?wimp\.com/(?P<id>[^/]+)'
_TESTS = [{ _TESTS = [{
'url': 'http://www.wimp.com/maruexhausted/',
'url': 'http://www.wimp.com/maru-is-exhausted/',
'md5': 'ee21217ffd66d058e8b16be340b74883', 'md5': 'ee21217ffd66d058e8b16be340b74883',
'info_dict': { 'info_dict': {
'id': 'maruexhausted',
'id': 'maru-is-exhausted',
'ext': 'mp4', 'ext': 'mp4',
'title': 'Maru is exhausted.', 'title': 'Maru is exhausted.',
'description': 'md5:57e099e857c0a4ea312542b684a869b8', 'description': 'md5:57e099e857c0a4ea312542b684a869b8',
} }
}, { }, {
'url': 'http://www.wimp.com/clowncar/', 'url': 'http://www.wimp.com/clowncar/',
'md5': '4e2986c793694b55b37cf92521d12bb4',
'md5': '5c31ad862a90dc5b1f023956faec13fe',
'info_dict': { 'info_dict': {
'id': 'clowncar',
'id': 'cG4CEr2aiSg',
'ext': 'webm', 'ext': 'webm',
'title': 'It\'s like a clown car.',
'description': 'md5:0e56db1370a6e49c5c1d19124c0d2fb2',
'title': 'Basset hound clown car...incredible!',
'description': '5 of my Bassets crawled in this dog loo! www.bellinghambassets.com\n\nFor licensing/usage please contact: licensing(at)jukinmediadotcom',
'upload_date': '20140303',
'uploader': 'Gretchen Hoey',
'uploader_id': 'gretchenandjeff1',
}, },
'add_ie': ['Youtube'],
}] }]
def _real_extract(self, url): def _real_extract(self, url):
@ -41,14 +45,13 @@ class WimpIE(InfoExtractor):
'ie_key': YoutubeIE.ie_key(), 'ie_key': YoutubeIE.ie_key(),
} }
video_url = self._search_regex(
r'<video[^>]+>\s*<source[^>]+src=(["\'])(?P<url>.+?)\1',
webpage, 'video URL', group='url')
info_dict = self._extract_jwplayer_data(
webpage, video_id, require_title=False)
return {
info_dict.update({
'id': video_id, 'id': video_id,
'url': video_url,
'title': self._og_search_title(webpage), 'title': self._og_search_title(webpage),
'thumbnail': self._og_search_thumbnail(webpage),
'description': self._og_search_description(webpage), 'description': self._og_search_description(webpage),
}
})
return info_dict
Loading…
Cancel
Save