ytdl-nightly/youtube_dl/extractor/ku6.py

36 lines
1.0 KiB
Python
Raw Normal View History

2014-05-31 06:15:59 +02:00
from __future__ import unicode_literals
2014-06-07 15:46:33 +02:00
2014-05-31 06:15:59 +02:00
import re
2014-06-07 15:46:33 +02:00
2014-05-31 06:15:59 +02:00
from .common import InfoExtractor
2014-06-07 15:46:33 +02:00
2014-05-31 06:15:59 +02:00
class Ku6IE(InfoExtractor):
_VALID_URL = r'http://v\.ku6\.com/show/(?P<id>[a-zA-Z0-9\-\_]+)(?:\.)*html'
_TEST = {
'url': 'http://v.ku6.com/show/JG-8yS14xzBr4bCn1pu0xw...html',
2014-06-07 15:46:33 +02:00
'md5': '01203549b9efbb45f4b87d55bdea1ed1',
2014-05-31 06:15:59 +02:00
'info_dict': {
'id': 'JG-8yS14xzBr4bCn1pu0xw',
'ext': 'f4v',
2014-06-07 15:46:33 +02:00
'title': 'techniques test',
2014-05-31 06:15:59 +02:00
}
}
def _real_extract(self, url):
mobj = re.match(self._VALID_URL, url)
video_id = mobj.group('id')
webpage = self._download_webpage(url, video_id)
title = self._search_regex(r'<h1 title=.*>(.*?)</h1>', webpage, 'title')
2014-06-07 15:46:33 +02:00
dataUrl = 'http://v.ku6.com/fetchVideo4Player/%s.html' % video_id
2014-05-31 06:15:59 +02:00
jsonData = self._download_json(dataUrl, video_id)
downloadUrl = jsonData['data']['f']
return {
'id': video_id,
'title': title,
'url': downloadUrl
}