[mwave] New extractor for mwave.interest.me

This commit is contained in:
ping 2015-07-22 14:31:29 +08:00
parent c84683c88b
commit 03749d9014
2 changed files with 47 additions and 0 deletions

View File

@ -334,6 +334,7 @@ from .muenchentv import MuenchenTVIE
from .musicplayon import MusicPlayOnIE
from .musicvault import MusicVaultIE
from .muzu import MuzuTVIE
from .mwave import MwaveIE
from .myspace import MySpaceIE, MySpaceAlbumIE
from .myspass import MySpassIE
from .myvi import MyviIE

View File

@ -0,0 +1,46 @@
from __future__ import unicode_literals
from .common import InfoExtractor
class MwaveIE(InfoExtractor):
IE_NAME = 'mwave'
_VALID_URL = r'https?://mwave\.interest\.me/mnettv/videodetail\.m\?searchVideoDetailVO\.clip_id=(?P<id>[0-9]+)'
_TESTS = [{
'url': 'http://mwave.interest.me/mnettv/videodetail.m?searchVideoDetailVO.clip_id=168859',
'info_dict': {
'id': '168859',
'ext': 'flv',
'title': '[M COUNTDOWN] SISTAR - SHAKE IT',
'creator': 'M COUNTDOWN',
}
}, {
'url': 'http://mwave.interest.me/mnettv/videodetail.m?searchVideoDetailVO.clip_id=168860',
'info_dict': {
'id': '168860',
'ext': 'flv',
'title': '[Full Ver.] M GIGS Ep. 59 - IDIOTAPE Live Part 1',
'creator': 'M-GIGS',
}
}]
def _real_extract(self, url):
video_id = self._match_id(url)
stream_info = self._download_json(
'http://mwave.interest.me/onair/vod_info.m?vodtype=CL&sectorid=&endinfo=Y&id=%s' % video_id,
'Download stream info')
formats = []
for info in stream_info['cdn']:
f4m_stream = self._download_json(info['url'], video_id, 'Download f4m stream')
formats.extend(
self._extract_f4m_formats(f4m_stream['fileurl'] + '&g=PCROWKHLYUDY&hdcore=3.0.3', video_id))
self._sort_formats(formats)
return {
'id': video_id,
'title': stream_info['title'],
'creator': stream_info.get('program_title'),
'formats': formats,
}