提交 4aaa73de 编写于 作者: M Mort Yao

Google+: dirty fix #103, #104

上级 4c5a2540
......@@ -132,9 +132,17 @@ def url_info(url, faker = False):
if type in mapping:
ext = mapping[type]
else:
ext = None
type = None
filename = parse.unquote(r1(r'filename="?(.+)"?', headers['content-disposition']))
if len(filename.split('.')) > 1:
ext = filename.split('.')[-1]
else:
ext = None
size = int(headers['content-length'])
if headers['transfer-encoding'] != 'chunked':
size = int(headers['content-length'])
else:
size = None
return type, ext, size
......@@ -357,7 +365,6 @@ def download_urls(urls, title, ext, total_size, output_dir = '.', refer = None,
print('Real URLs:\n', urls, '\n')
return
#assert ext in ('3gp', 'flv', 'mp4', 'webm')
if not total_size:
try:
total_size = urls_size(urls)
......@@ -506,7 +513,7 @@ def playlist_not_supported(name):
def print_info(site_info, title, type, size):
if type in ['3gp']:
type = 'video/3gpp'
elif type in ['asf']:
elif type in ['asf', 'wmv']:
type = 'video/x-ms-asf'
elif type in ['flv', 'f4v']:
type = 'video/x-flv'
......
......@@ -20,8 +20,10 @@ def googleplus_download(url, output_dir = '.', merge = True, info_only = False):
html = get_html(url2)
html = parse.unquote(html.replace('\/', '/'))
real_url = unicodize(r1(r'"(https://video.googleusercontent.com/[^"]*)"', html).replace('\/', '/'))
if not real_url:
real_url = unicodize(r1(r'"(https://video.googleusercontent.com/[^"]*)",1\]', html).replace('\/', '/'))
if real_url:
type, ext, size = url_info(real_url)
if not real_url or not size:
url_data = re.findall(r'(\[[^\[\"]+\"http://redirector.googlevideo.com/.*\"\])', html)
for itag in [
'38',
......@@ -46,10 +48,12 @@ def googleplus_download(url, output_dir = '.', merge = True, info_only = False):
break
real_url = unicodize(real_url)
_, _, size = url_info(real_url)
type, ext = 'video/mp4', 'mp4'
type, ext, size = url_info(real_url)
print_info(site_info, title, type, size)
if not ext:
ext = 'mp4'
print_info(site_info, title, ext, size)
if not info_only:
download_urls([real_url], title, ext, size, output_dir, merge = merge)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册