diff --git a/src/you_get/common.py b/src/you_get/common.py index c14026dc..0a8e160c 100644 --- a/src/you_get/common.py +++ b/src/you_get/common.py @@ -900,7 +900,7 @@ def script_main(script_name, download, download_playlist = None): sys.exit(1) def url_to_module(url): - from .extractors import netease, w56, acfun, baidu, baomihua, bilibili, blip, catfun, cntv, cbs, coursera, dailymotion, dongting, douban, douyutv, ehow, facebook, freesound, google, sina, ifeng, alive, instagram, iqiyi, joy, jpopsuki, khan, ku6, kugou, kuwo, letv, lizhi, magisto, miomio, mixcloud, mtv81, nicovideo, pptv, qq, sohu, songtaste, soundcloud, ted, theplatform, tudou, tucao, tumblr, vid48, videobam, vimeo, vine, vk, xiami, yinyuetai, youku, youtube, zhanqi + from .extractors import netease, w56, acfun, baidu, baomihua, bilibili, blip, catfun, cntv, cbs, coursera, dailymotion, dongting, douban, douyutv, ehow, facebook, freesound, google, sina, ifeng, alive, instagram, iqiyi, joy, jpopsuki, khan, ku6, kugou, kuwo, letv, lizhi, magisto, miomio, mixcloud, mtv81, nicovideo, pptv, qq, sohu, songtaste, soundcloud, ted, theplatform, tudou, tucao, tumblr, vid48, videobam, vidto, vimeo, vine, vk, xiami, yinyuetai, youku, youtube, zhanqi video_host = r1(r'https?://([^/]+)/', url) video_url = r1(r'https?://[^/]+(.*)', url) @@ -965,6 +965,7 @@ def url_to_module(url): 'tumblr': tumblr, 'vid48': vid48, 'videobam': videobam, + 'vidto': vidto, 'vimeo': vimeo, 'vine': vine, 'vk': vk, diff --git a/src/you_get/extractors/vidto.py b/src/you_get/extractors/vidto.py new file mode 100644 index 00000000..999c3aa6 --- /dev/null +++ b/src/you_get/extractors/vidto.py @@ -0,0 +1,40 @@ +#!/usr/bin/env python + +__all__ = ['vidto_download'] + +from ..common import * +import pdb +import time + + +def vidto_download(url, output_dir='.', merge=True, info_only=False): + html = get_content(url) + params = {} + r = re.findall( + r'type="(?:hidden|submit)?"(?:.*?)name="(.+?)"\s* value="?(.+?)">', html) + for name, value in r: + params[name] = value + data = parse.urlencode(params).encode('utf-8') + req = request.Request(url) + print("Please wait for 6 seconds...") + time.sleep(6) + print("Starting") + new_html = request.urlopen(req, data).read().decode('utf-8', 'replace') + new_stff = re.search('lnk_download" href="(.*?)">', new_html) + if(new_stff): + url = new_stff.group(1) + title = params['fname'] + type = "" + ext = "" + a, b, size = url_info(url) + print_info(site_info, title, type, size) + if not info_only: + download_urls([url], title, ext, size, output_dir, merge=merge) + else: + print("cannot find link, please review") + pdb.set_trace() + + +site_info = "vidto.me" +download = vidto_download +download_playlist = playlist_not_supported('vidto')