From 6fa81497d539a99fda2636126df3e485179a4edd Mon Sep 17 00:00:00 2001 From: MaxwellGoblin Date: Thu, 20 Jul 2017 17:14:05 +0800 Subject: [PATCH 1/8] [youtube]use mp4_audio track when no audio track for webm --- src/you_get/extractors/youtube.py | 12 ++++++++++-- 1 file changed, 10 insertions(+), 2 deletions(-) diff --git a/src/you_get/extractors/youtube.py b/src/you_get/extractors/youtube.py index 986906d6..3b412dc2 100644 --- a/src/you_get/extractors/youtube.py +++ b/src/you_get/extractors/youtube.py @@ -366,14 +366,22 @@ class YouTube(VideoExtractor): dash_url += '&signature={}'.format(sig) dash_size = stream['clen'] itag = stream['itag'] + audio_url = None + audio_size = None + try: + audio_url = dash_webm_a_url + audio_size = int(dash_webm_a_size) + except UnboundLocalError as e: + audio_url = dash_mp4_a_url + audio_size = int(dash_mp4_a_size) self.dash_streams[itag] = { 'quality': stream['size'], 'itag': itag, 'type': mimeType, 'mime': mimeType, 'container': 'webm', - 'src': [dash_url, dash_webm_a_url], - 'size': int(dash_size) + int(dash_webm_a_size) + 'src': [dash_url, audio_url], + 'size': int(dash_size) + int(audio_size) } def extract(self, **kwargs): From 1900f7608cc2756d5460c99eb792c8e0eb42e7f4 Mon Sep 17 00:00:00 2001 From: mq-liu Date: Wed, 7 Mar 2018 09:48:11 +0800 Subject: [PATCH 2/8] fix bilibili download fail the bilibili api has changed "https://interface.bilibili.com/v2/playurl?cid=33250486&appkey=84956560bc028eb7&otype=json&type=&quality=0&qn=0&sign=a1b0401c8bf70d676bab133fa032469f" --- src/you_get/extractors/bilibili.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/you_get/extractors/bilibili.py b/src/you_get/extractors/bilibili.py index e5abccab..046d2cb1 100644 --- a/src/you_get/extractors/bilibili.py +++ b/src/you_get/extractors/bilibili.py @@ -23,7 +23,7 @@ from .youku import youku_download_by_vid class Bilibili(VideoExtractor): name = 'Bilibili' live_api = 'http://live.bilibili.com/api/playurl?cid={}&otype=json' - api_url = 'http://interface.bilibili.com/playurl?' + api_url = 'http://interface.bilibili.com/v2/playurl?' bangumi_api_url = 'http://bangumi.bilibili.com/player/web_api/playurl?' live_room_init_api_url = 'https://api.live.bilibili.com/room/v1/Room/room_init?id={}' live_room_info_api_url = 'https://api.live.bilibili.com/room/v1/Room/get_info?room_id={}' From 92eb72bc7d20370e2835ed78dad94c0accaa068a Mon Sep 17 00:00:00 2001 From: Kugel-Blitz <21170940+Kugel-Blitz@users.noreply.github.com> Date: Sun, 11 Mar 2018 10:06:19 +1300 Subject: [PATCH 3/8] Use 0513 when cookies are used 0507 doesn't seem to honour cookies when they're loaded. --- src/you_get/extractors/youku.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/you_get/extractors/youku.py b/src/you_get/extractors/youku.py index 9d74b9c8..d40d16c1 100644 --- a/src/you_get/extractors/youku.py +++ b/src/you_get/extractors/youku.py @@ -78,7 +78,10 @@ class Youku(VideoExtractor): self.api_error_code = None self.api_error_msg = None - self.ccode = '0513' + if cookies: + self.ccode = '0513' + else: + self.ccode = '0507' self.utid = None def youku_ups(self): From 344502af0d223def2a9ed0fde3766f6f7490b23b Mon Sep 17 00:00:00 2001 From: Mort Yao Date: Thu, 15 Mar 2018 22:38:23 +0100 Subject: [PATCH 4/8] [youku] resolve conflict --- src/you_get/extractors/youku.py | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/src/you_get/extractors/youku.py b/src/you_get/extractors/youku.py index 099552cf..d40d16c1 100644 --- a/src/you_get/extractors/youku.py +++ b/src/you_get/extractors/youku.py @@ -78,7 +78,10 @@ class Youku(VideoExtractor): self.api_error_code = None self.api_error_msg = None - self.ccode = '0507' + if cookies: + self.ccode = '0513' + else: + self.ccode = '0507' self.utid = None def youku_ups(self): From fdf53508388135917bb976319b2be01b96034634 Mon Sep 17 00:00:00 2001 From: Phun Date: Mon, 19 Mar 2018 12:48:38 +0800 Subject: [PATCH 5/8] fix the bug of v.qq.com --- src/you_get/extractors/qq.py | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/you_get/extractors/qq.py b/src/you_get/extractors/qq.py index 89dd7b61..5591e3eb 100644 --- a/src/you_get/extractors/qq.py +++ b/src/you_get/extractors/qq.py @@ -122,9 +122,9 @@ def qq_download(url, output_dir='.', merge=True, info_only=False, **kwargs): return #do redirect - if 'v.qq.com/page' in url: + if 'v.qq.com/x' in url: # for URLs like this: - # http://v.qq.com/page/k/9/7/k0194pwgw97.html + # https://v.qq.com/x/page/r05533mns3s.html new_url = url_locations([url])[0] if url == new_url: #redirect in js? From 3faaebb6762ff1bbea1e9b45b6dd348a92ddbcfc Mon Sep 17 00:00:00 2001 From: Mort Yao Date: Thu, 22 Mar 2018 22:40:07 +0100 Subject: [PATCH 6/8] [qq] no more redirect (close #2586) --- src/you_get/extractors/qq.py | 12 ------------ 1 file changed, 12 deletions(-) diff --git a/src/you_get/extractors/qq.py b/src/you_get/extractors/qq.py index 5591e3eb..ffca5a85 100644 --- a/src/you_get/extractors/qq.py +++ b/src/you_get/extractors/qq.py @@ -121,18 +121,6 @@ def qq_download(url, output_dir='.', merge=True, info_only=False, **kwargs): qq_download_by_vid(vid, vid, output_dir, merge, info_only) return - #do redirect - if 'v.qq.com/x' in url: - # for URLs like this: - # https://v.qq.com/x/page/r05533mns3s.html - new_url = url_locations([url])[0] - if url == new_url: - #redirect in js? - content = get_content(url) - url = match1(content,r'window\.location\.href="(.*?)"') - else: - url = new_url - if 'kuaibao.qq.com' in url or re.match(r'http://daxue.qq.com/content/content/id/\d+', url): content = get_content(url) vid = match1(content, r'vid\s*=\s*"\s*([^"]+)"') From 8979cd63eaa0979f249e4132a10b3706c4952b02 Mon Sep 17 00:00:00 2001 From: Mort Yao Date: Thu, 22 Mar 2018 22:44:33 +0100 Subject: [PATCH 7/8] [qq] break if no pay --- src/you_get/extractors/qq.py | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/you_get/extractors/qq.py b/src/you_get/extractors/qq.py index ffca5a85..7b1a6860 100644 --- a/src/you_get/extractors/qq.py +++ b/src/you_get/extractors/qq.py @@ -47,6 +47,9 @@ def qq_download_by_vid(vid, title, output_dir='.', merge=True, info_only=False): else: log.w(key_json['msg']) break + if key_json.get('filename') is None: + log.w(key_json['msg']) + break part_urls.append(url) _, ext, size = url_info(url) From 821e639e025296b4c041d0535ca4d95ad72ea397 Mon Sep 17 00:00:00 2001 From: Mort Yao Date: Thu, 22 Mar 2018 22:46:12 +0100 Subject: [PATCH 8/8] [youku] boom boom boom --- src/you_get/extractors/youku.py | 5 +---- 1 file changed, 1 insertion(+), 4 deletions(-) diff --git a/src/you_get/extractors/youku.py b/src/you_get/extractors/youku.py index d40d16c1..bc4d8088 100644 --- a/src/you_get/extractors/youku.py +++ b/src/you_get/extractors/youku.py @@ -78,10 +78,7 @@ class Youku(VideoExtractor): self.api_error_code = None self.api_error_msg = None - if cookies: - self.ccode = '0513' - else: - self.ccode = '0507' + self.ccode = '0590' self.utid = None def youku_ups(self):