Browse Source

[odatv] Add extractor

master
skacurt 8 years ago
committed by Sergey M․
parent
commit
740d7c49c2
No known key found for this signature in database GPG Key ID: 2C393E0F18A9236D
2 changed files with 52 additions and 0 deletions
  1. 1
      youtube_dl/extractor/extractors.py
  2. 51
      youtube_dl/extractor/odatv.py

1
youtube_dl/extractor/extractors.py

@ -587,6 +587,7 @@ from .nytimes import (
NYTimesArticleIE, NYTimesArticleIE,
) )
from .nuvid import NuvidIE from .nuvid import NuvidIE
from .odatv import OdaTVIE
from .odnoklassniki import OdnoklassnikiIE from .odnoklassniki import OdnoklassnikiIE
from .oktoberfesttv import OktoberfestTVIE from .oktoberfesttv import OktoberfestTVIE
from .onet import ( from .onet import (

51
youtube_dl/extractor/odatv.py

@ -0,0 +1,51 @@
# coding: utf-8
from __future__ import unicode_literals
from .common import InfoExtractor
from ..utils import (
ExtractorError,
remove_start
)
import re
class OdaTVIE(InfoExtractor):
_VALID_URL = r'^https?://(?:www\.)?odatv\.com/(?:mob|vid)_video\.php\?id=(?P<id>[^&]*)'
_TESTS = [{
'url': 'http://odatv.com/vid_video.php?id=8E388',
'md5': 'dc61d052f205c9bf2da3545691485154',
'info_dict': {
'id': '8E388',
'ext': 'mp4',
'title': 'md5:69654805a16a16cf9ec9d055e079831c'
}
}, {
'url': 'http://odatv.com/mob_video.php?id=8E388',
'md5': 'dc61d052f205c9bf2da3545691485154',
'info_dict': {
'id': '8E388',
'ext': 'mp4',
'title': 'md5:69654805a16a16cf9ec9d055e079831c'
}
}, {
'url': 'http://odatv.com/mob_video.php?id=8E900',
'md5': '',
'info_dict': {
'id': '8E900',
'ext': 'mp4',
'title': 'not found check'
}
}]
def _real_extract(self, url):
video_id = self._match_id(url)
webpage = self._download_webpage(url, video_id)
if 'NO VIDEO!' in webpage:
raise ExtractorError('Video %s does not exist' % video_id, expected=True)
return {
'id': video_id,
'title': remove_start(self._og_search_title(webpage), 'Video: '),
'thumbnail': self._og_search_thumbnail(webpage),
'url': self._html_search_regex(r"(http.+?video_%s\.mp4)" % re.escape(video_id), webpage, 'url', flags=re.IGNORECASE)
}
Loading…
Cancel
Save