mirror of
https://github.com/soimort/you-get.git
synced 2025-02-03 08:43:58 +03:00
This commit is contained in:
commit
585eb8d441
@ -922,7 +922,7 @@ def script_main(script_name, download, download_playlist = None):
|
|||||||
sys.exit(1)
|
sys.exit(1)
|
||||||
|
|
||||||
def url_to_module(url):
|
def url_to_module(url):
|
||||||
from .extractors import netease, w56, acfun, baidu, bilibili, blip, catfun, cntv, cbs, coursera, dailymotion, douban, ehow, facebook, freesound, google, sina, ifeng, alive, instagram, iqiyi, joy, jpopsuki, khan, ku6, kugou, kuwo, letv, magisto, miomio, mixcloud, mtv81, nicovideo, pptv, qq, sohu, songtaste, soundcloud, ted, theplatform, tudou, tumblr, vid48, vimeo, vine, vk, xiami, yinyuetai, youku, youtube
|
from .extractors import netease, w56, acfun, baidu, bilibili, blip, catfun, cntv, cbs, coursera, dailymotion, douban, ehow, facebook, freesound, google, sina, ifeng, alive, instagram, iqiyi, joy, jpopsuki, khan, ku6, kugou, kuwo, letv, magisto, miomio, mixcloud, mtv81, nicovideo, pptv, qq, sohu, songtaste, soundcloud, ted, theplatform, tudou, tucao, tumblr, vid48, vimeo, vine, vk, xiami, yinyuetai, youku, youtube
|
||||||
|
|
||||||
video_host = r1(r'https?://([^/]+)/', url)
|
video_host = r1(r'https?://([^/]+)/', url)
|
||||||
video_url = r1(r'https?://[^/]+(.*)', url)
|
video_url = r1(r'https?://[^/]+(.*)', url)
|
||||||
@ -978,6 +978,7 @@ def url_to_module(url):
|
|||||||
'soundcloud': soundcloud,
|
'soundcloud': soundcloud,
|
||||||
'ted': ted,
|
'ted': ted,
|
||||||
'theplatform': theplatform,
|
'theplatform': theplatform,
|
||||||
|
"tucao":tucao,
|
||||||
'tudou': tudou,
|
'tudou': tudou,
|
||||||
'tumblr': tumblr,
|
'tumblr': tumblr,
|
||||||
'vid48': vid48,
|
'vid48': vid48,
|
||||||
|
@ -37,6 +37,7 @@ from .sohu import *
|
|||||||
from .songtaste import *
|
from .songtaste import *
|
||||||
from .soundcloud import *
|
from .soundcloud import *
|
||||||
from .theplatform import *
|
from .theplatform import *
|
||||||
|
from .tucao import *
|
||||||
from .tudou import *
|
from .tudou import *
|
||||||
from .tumblr import *
|
from .tumblr import *
|
||||||
from .vid48 import *
|
from .vid48 import *
|
||||||
|
@ -4,8 +4,21 @@ __all__ = ['qq_download']
|
|||||||
|
|
||||||
from ..common import *
|
from ..common import *
|
||||||
|
|
||||||
|
#QQMUSIC
|
||||||
|
#SINGLE
|
||||||
|
#1. http://y.qq.com/#type=song&mid=000A9lMb0iEqwN
|
||||||
|
#2. http://y.qq.com/#type=song&id=4754713
|
||||||
|
#3. http://s.plcloud.music.qq.com/fcgi-bin/fcg_yqq_song_detail_info.fcg?songmid=002NqCeX3owQIw
|
||||||
|
#4. http://s.plcloud.music.qq.com/fcgi-bin/fcg_yqq_song_detail_info.fcg?songid=4754713
|
||||||
|
#ALBUM
|
||||||
|
#1. http://y.qq.com/y/static/album/3/c/00385vBa0n3O3c.html?pgv_ref=qqmusic.y.index.music.pic1
|
||||||
|
#2. http://y.qq.com/#type=album&mid=004c62RC2uujor
|
||||||
|
#MV
|
||||||
|
#can download as video through qq_download_by_id
|
||||||
|
#1. http://y.qq.com/y/static/mv/mv_play.html?vid=i0014ufczcw
|
||||||
|
|
||||||
def qq_download_by_id(id, title=None, output_dir='.', merge=True, info_only=False):
|
def qq_download_by_id(id, title=None, output_dir='.', merge=True, info_only=False):
|
||||||
xml = get_html('http://www.acfun.com/getinfo?vids=%s' % id)
|
xml = get_html('http://www.acfun.tv/getinfo?vids=%s' % id)
|
||||||
from xml.dom.minidom import parseString
|
from xml.dom.minidom import parseString
|
||||||
doc = parseString(xml)
|
doc = parseString(xml)
|
||||||
doc_root = doc.getElementsByTagName('root')[0]
|
doc_root = doc.getElementsByTagName('root')[0]
|
||||||
|
54
src/you_get/extractors/tucao.py
Normal file
54
src/you_get/extractors/tucao.py
Normal file
@ -0,0 +1,54 @@
|
|||||||
|
#!/usr/bin/env python
|
||||||
|
|
||||||
|
__all__ = ['tucao_download']
|
||||||
|
from ..common import *
|
||||||
|
# import re
|
||||||
|
import random
|
||||||
|
import time
|
||||||
|
from xml.dom import minidom
|
||||||
|
|
||||||
|
#1. <li>type=tudou&vid=199687639</li>
|
||||||
|
#2. <li>type=tudou&vid=199506910|</li>
|
||||||
|
#3. <li>type=video&file=http://xiaoshen140731.qiniudn.com/lovestage04.flv|</li>
|
||||||
|
#4 may ? <li>type=video&file=http://xiaoshen140731.qiniudn.com/lovestage04.flv|xx**type=&vid=?</li>
|
||||||
|
#5. <li>type=tudou&vid=200003098|07**type=tudou&vid=200000350|08</li>
|
||||||
|
|
||||||
|
# re_pattern=re.compile(r"(type=(.+?)&(vid|file)=(.*?))[\|<]")
|
||||||
|
|
||||||
|
def tucao_single_download(type_link, title, output_dir=".", merge=True, info_only=False):
|
||||||
|
if "file" in type_link:
|
||||||
|
url=type_link[type_link.find("file=")+5:]
|
||||||
|
vtype, ext, size=url_info(url)
|
||||||
|
print_info(site_info, title, vtype, size)
|
||||||
|
if not info_only:
|
||||||
|
download_urls([url], title, ext, size, output_dir)
|
||||||
|
else:
|
||||||
|
u="http://www.tucao.cc/api/playurl.php?{}&key=tucao{:07x}.cc&r={}".format(type_link,random.getrandbits(28),int(time.time()*1000))
|
||||||
|
xml=minidom.parseString(get_content(u))
|
||||||
|
urls=[]
|
||||||
|
size=0
|
||||||
|
for i in xml.getElementsByTagName("url"):
|
||||||
|
urls.append(i.firstChild.nodeValue)
|
||||||
|
vtype, ext, _size=url_info(i.firstChild.nodeValue)
|
||||||
|
size+=_size
|
||||||
|
print_info(site_info, title, vtype, size)
|
||||||
|
if not info_only:
|
||||||
|
download_urls(urls, title, ext, size, output_dir)
|
||||||
|
|
||||||
|
def tucao_download(url, output_dir=".", merge=True, info_only=False):
|
||||||
|
html=get_content(url)
|
||||||
|
title=match1(html,r'<h1 class="show_title">(.*?)<\w')
|
||||||
|
raw_list=match1(html,r"<li>(type=.+?)</li>")
|
||||||
|
raw_l=raw_list.split("**")
|
||||||
|
if len(raw_l)==1:
|
||||||
|
format_link=raw_l[0][:-1] if raw_l[0].endswith("|") else raw_l[0]
|
||||||
|
tucao_single_download(format_link,title,output_dir,merge,info_only)
|
||||||
|
else:
|
||||||
|
for i in raw_l:
|
||||||
|
format_link,sub_title=i.split("|")
|
||||||
|
tucao_single_download(format_link,title+"-"+sub_title,output_dir,merge,info_only)
|
||||||
|
|
||||||
|
|
||||||
|
site_info = "tucao.cc"
|
||||||
|
download = tucao_download
|
||||||
|
download_playlist = playlist_not_supported("tucao")
|
Loading…
Reference in New Issue
Block a user