mirror of
https://github.com/soimort/you-get.git
synced 2025-03-14 20:04:00 +03:00
[videomega] add support
This commit is contained in:
parent
8691bb7951
commit
cfad01e464
@ -66,6 +66,7 @@ SITES = {
|
|||||||
'tumblr' : 'tumblr',
|
'tumblr' : 'tumblr',
|
||||||
'twimg' : 'twitter',
|
'twimg' : 'twitter',
|
||||||
'twitter' : 'twitter',
|
'twitter' : 'twitter',
|
||||||
|
'videomega' : 'videomega',
|
||||||
'vidto' : 'vidto',
|
'vidto' : 'vidto',
|
||||||
'vimeo' : 'vimeo',
|
'vimeo' : 'vimeo',
|
||||||
'weibo' : 'miaopai',
|
'weibo' : 'miaopai',
|
||||||
|
@ -58,6 +58,7 @@ from .tudou import *
|
|||||||
from .tumblr import *
|
from .tumblr import *
|
||||||
from .twitter import *
|
from .twitter import *
|
||||||
from .veoh import *
|
from .veoh import *
|
||||||
|
from .videomega import *
|
||||||
from .vimeo import *
|
from .vimeo import *
|
||||||
from .vine import *
|
from .vine import *
|
||||||
from .vk import *
|
from .vk import *
|
||||||
|
53
src/you_get/extractors/videomega.py
Normal file
53
src/you_get/extractors/videomega.py
Normal file
@ -0,0 +1,53 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
from ..common import *
|
||||||
|
from ..extractor import VideoExtractor
|
||||||
|
|
||||||
|
import ssl
|
||||||
|
|
||||||
|
class Videomega(VideoExtractor):
|
||||||
|
name = "Videomega"
|
||||||
|
|
||||||
|
stream_types = [
|
||||||
|
{'id': 'original'}
|
||||||
|
]
|
||||||
|
|
||||||
|
def prepare(self, **kwargs):
|
||||||
|
# Hot-plug cookie handler
|
||||||
|
ssl_context = request.HTTPSHandler(
|
||||||
|
context=ssl.SSLContext(ssl.PROTOCOL_TLSv1))
|
||||||
|
cookie_handler = request.HTTPCookieProcessor()
|
||||||
|
opener = request.build_opener(ssl_context, cookie_handler)
|
||||||
|
opener.addheaders = [('Referer', self.url),
|
||||||
|
('Cookie', 'noadvtday=0')]
|
||||||
|
request.install_opener(opener)
|
||||||
|
|
||||||
|
ref = match1(self.url, r'ref=(\w+)')
|
||||||
|
php_url = 'http://videomega.tv/view.php?ref=' + ref
|
||||||
|
content = get_content(php_url)
|
||||||
|
|
||||||
|
self.title = match1(content, r'<title>(.*)</title>')
|
||||||
|
js = match1(content, r'(eval.*)')
|
||||||
|
t = match1(js, r'\$\("\d+"\)\.\d+\("\d+","([^"]+)"\)')
|
||||||
|
t = re.sub(r'(\w)', r'{\1}', t) \
|
||||||
|
.replace('a', '10') \
|
||||||
|
.replace('b', '11') \
|
||||||
|
.replace('c', '12') \
|
||||||
|
.replace('d', '13') \
|
||||||
|
.replace('e', '14') \
|
||||||
|
.replace('f', '15') \
|
||||||
|
.replace('g', '16')
|
||||||
|
s = match1(js, r"'([^']+)'\.split").split('|')
|
||||||
|
self.streams['original'] = {
|
||||||
|
'url': t.format(*s)
|
||||||
|
}
|
||||||
|
|
||||||
|
def extract(self, **kwargs):
|
||||||
|
for i in self.streams:
|
||||||
|
s = self.streams[i]
|
||||||
|
_, s['container'], s['size'] = url_info(s['url'])
|
||||||
|
s['src'] = [s['url']]
|
||||||
|
|
||||||
|
site = Videomega()
|
||||||
|
download = site.download_by_url
|
||||||
|
download_playlist = site.download_by_url
|
Loading…
x
Reference in New Issue
Block a user