X-Git-Url: http://git.cielonegro.org/gitweb.cgi?a=blobdiff_plain;f=youtube_dl%2Fextractor%2Fsohu.py;h=29bd9ce6f76247b5ac997050075c7e720d8a3b2b;hb=c203be3fb4f00388c81564dc0c85ff8a10ff4553;hp=335e84fab7b990019aaf1063fd2fd6ea721bb465;hpb=5c7495a19429e3b27c003a4bd5bb96ed1e3a4932;p=youtube-dl.git diff --git a/youtube_dl/extractor/sohu.py b/youtube_dl/extractor/sohu.py index 335e84fab..29bd9ce6f 100644 --- a/youtube_dl/extractor/sohu.py +++ b/youtube_dl/extractor/sohu.py @@ -8,6 +8,7 @@ from ..compat import ( compat_str, compat_urllib_request ) +from ..utils import ExtractorError class SohuIE(InfoExtractor): @@ -22,12 +23,10 @@ class SohuIE(InfoExtractor): 'ext': 'mp4', 'title': 'MVï¼Far East MovementãThe Illestã', }, - 'params': { - 'cn_verification_proxy': 'proxy.uku.im:8888' - } + 'skip': 'On available in China', }, { 'url': 'http://tv.sohu.com/20150305/n409385080.shtml', - 'md5': '699060e75cf58858dd47fb9c03c42cfb', + 'md5': 'ac9a5d322b4bf9ae184d53e4711e4f1a', 'info_dict': { 'id': '409385080', 'ext': 'mp4', @@ -35,12 +34,55 @@ class SohuIE(InfoExtractor): } }, { 'url': 'http://my.tv.sohu.com/us/232799889/78693464.shtml', - 'md5': '9bf34be48f2f4dadcb226c74127e203c', + 'md5': '49308ff6dafde5ece51137d04aec311e', 'info_dict': { 'id': '78693464', 'ext': 'mp4', 'title': 'ãç±èåã第31æï¼MWCè§ä¸å°çå¥è©ææº', } + }, { + 'note': 'Multipart video', + 'url': 'http://my.tv.sohu.com/pl/8384802/78910339.shtml', + 'info_dict': { + 'id': '78910339', + 'title': 'ãç¥æ¢èå®æç§ç±ã第13æ æäºä¹å½± 赫å¡éå§', + }, + 'playlist': [{ + 'md5': '492923eac023ba2f13ff69617c32754a', + 'info_dict': { + 'id': '78910339_part1', + 'ext': 'mp4', + 'duration': 294, + 'title': 'ãç¥æ¢èå®æç§ç±ã第13æ æäºä¹å½± 赫å¡éå§', + } + }, { + 'md5': 'de604848c0e8e9c4a4dde7e1347c0637', + 'info_dict': { + 'id': '78910339_part2', + 'ext': 'mp4', + 'duration': 300, + 'title': 'ãç¥æ¢èå®æç§ç±ã第13æ æäºä¹å½± 赫å¡éå§', + } + }, { + 'md5': '93584716ee0657c0b205b8aa3d27aa13', + 'info_dict': { + 'id': '78910339_part3', + 'ext': 'mp4', + 'duration': 150, + 'title': 'ãç¥æ¢èå®æç§ç±ã第13æ æäºä¹å½± 赫å¡éå§', + } + }] + }, { + 'note': 'Video with title containing dash', + 'url': 'http://my.tv.sohu.com/us/249884221/78932792.shtml', + 'info_dict': { + 'id': '78932792', + 'ext': 'mp4', + 'title': 'youtube-dl testing video', + }, + 'params': { + 'skip_download': True + } }] def _real_extract(self, url): @@ -57,23 +99,31 @@ class SohuIE(InfoExtractor): if cn_verification_proxy: req.add_header('Ytdl-request-proxy', cn_verification_proxy) - return self._download_json(req, video_id, - 'Downloading JSON data for %s' % vid_id) + return self._download_json( + req, video_id, + 'Downloading JSON data for %s' % vid_id) mobj = re.match(self._VALID_URL, url) video_id = mobj.group('id') mytv = mobj.group('mytv') is not None webpage = self._download_webpage(url, video_id) - raw_title = self._html_search_regex( - r'(?s)