|
@ -10,6 +10,7 @@ from ..utils import ( |
|
|
|
|
|
|
|
|
class MwaveIE(InfoExtractor): |
|
|
class MwaveIE(InfoExtractor): |
|
|
_VALID_URL = r'https?://mwave\.interest\.me/mnettv/videodetail\.m\?searchVideoDetailVO\.clip_id=(?P<id>[0-9]+)' |
|
|
_VALID_URL = r'https?://mwave\.interest\.me/mnettv/videodetail\.m\?searchVideoDetailVO\.clip_id=(?P<id>[0-9]+)' |
|
|
|
|
|
_URL_TEMPLATE = 'http://mwave.interest.me/mnettv/videodetail.m?searchVideoDetailVO.clip_id=%s' |
|
|
_TEST = { |
|
|
_TEST = { |
|
|
'url': 'http://mwave.interest.me/mnettv/videodetail.m?searchVideoDetailVO.clip_id=168859', |
|
|
'url': 'http://mwave.interest.me/mnettv/videodetail.m?searchVideoDetailVO.clip_id=168859', |
|
|
# md5 is unstable |
|
|
# md5 is unstable |
|
@ -56,3 +57,28 @@ class MwaveIE(InfoExtractor): |
|
|
'view_count': int_or_none(vod_info.get('hit')), |
|
|
'view_count': int_or_none(vod_info.get('hit')), |
|
|
'formats': formats, |
|
|
'formats': formats, |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class MwaveMeetGreetIE(InfoExtractor): |
|
|
|
|
|
_VALID_URL = r'https?://mwave\.interest\.me/meetgreet/view/(?P<id>\d+)' |
|
|
|
|
|
_TEST = { |
|
|
|
|
|
'url': 'http://mwave.interest.me/meetgreet/view/256', |
|
|
|
|
|
'info_dict': { |
|
|
|
|
|
'id': '173294', |
|
|
|
|
|
'ext': 'flv', |
|
|
|
|
|
'title': '[MEET&GREET] Park BoRam', |
|
|
|
|
|
'thumbnail': 're:^https?://.*\.jpg$', |
|
|
|
|
|
'uploader': 'Mwave', |
|
|
|
|
|
'duration': 3634, |
|
|
|
|
|
'view_count': int, |
|
|
|
|
|
} |
|
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
|
|
def _real_extract(self, url): |
|
|
|
|
|
video_id = self._match_id(url) |
|
|
|
|
|
webpage = self._download_webpage(url, video_id) |
|
|
|
|
|
clip_id = self._html_search_regex( |
|
|
|
|
|
r'<iframe[^>]+src="/mnettv/ifr_clip\.m\?searchVideoDetailVO\.clip_id=(\d+)', |
|
|
|
|
|
webpage, 'clip ID') |
|
|
|
|
|
clip_url = MwaveIE._URL_TEMPLATE % clip_id |
|
|
|
|
|
return self.url_result(clip_url, 'Mwave', clip_id) |