From c438ea87e4db650f5c44526b155ea335ea49d006 Mon Sep 17 00:00:00 2001 From: Dominika Date: Fri, 23 Oct 2020 20:07:43 -0400 Subject: [PATCH 01/13] [fix] Remove copyright infringing content --- test/test_all_urls.py | 1 - youtube_dl/extractor/youtube.py | 131 -------------------------------- 2 files changed, 132 deletions(-) diff --git a/test/test_all_urls.py b/test/test_all_urls.py index 81056a999d..4f448b4f61 100644 --- a/test/test_all_urls.py +++ b/test/test_all_urls.py @@ -33,7 +33,6 @@ def test_youtube_playlist_matching(self): assertPlaylist = lambda url: self.assertMatch(url, ['youtube:playlist']) assertPlaylist('ECUl4u3cNGP61MdtwGTqZA0MreSaDybji8') assertPlaylist('UUBABnxM4Ar9ten8Mdjj1j0Q') # 585 - assertPlaylist('PL63F0C78739B09958') assertPlaylist('https://www.youtube.com/playlist?list=UUBABnxM4Ar9ten8Mdjj1j0Q') assertPlaylist('https://www.youtube.com/course?list=ECUl4u3cNGP61MdtwGTqZA0MreSaDybji8') assertPlaylist('https://www.youtube.com/playlist?list=PLwP_SiAcdui0KVebT0mU9Apz359a4ubsC') diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py index bd15153806..95849ef454 100644 --- a/youtube_dl/extractor/youtube.py +++ b/youtube_dl/extractor/youtube.py @@ -578,48 +578,6 @@ class YoutubeIE(YoutubeBaseInfoExtractor): 'end_time': 9, } }, - { - 'url': 'https://www.youtube.com/watch?v=UxxajLWwzqY', - 'note': 'Test generic use_cipher_signature video (#897)', - 'info_dict': { - 'id': 'UxxajLWwzqY', - 'ext': 'mp4', - 'upload_date': '20120506', - 'title': 'Icona Pop - I Love It (feat. Charli XCX) [OFFICIAL VIDEO]', - 'alt_title': 'I Love It (feat. Charli XCX)', - 'description': 'md5:19a2f98d9032b9311e686ed039564f63', - 'tags': ['Icona Pop i love it', 'sweden', 'pop music', 'big beat records', 'big beat', 'charli', - 'xcx', 'charli xcx', 'girls', 'hbo', 'i love it', "i don't care", 'icona', 'pop', - 'iconic ep', 'iconic', 'love', 'it'], - 'duration': 180, - 'uploader': 'Icona Pop', - 'uploader_id': 'IconaPop', - 'uploader_url': r're:https?://(?:www\.)?youtube\.com/user/IconaPop', - 'creator': 'Icona Pop', - 'track': 'I Love It (feat. Charli XCX)', - 'artist': 'Icona Pop', - } - }, - { - 'url': 'https://www.youtube.com/watch?v=07FYdnEawAQ', - 'note': 'Test VEVO video with age protection (#956)', - 'info_dict': { - 'id': '07FYdnEawAQ', - 'ext': 'mp4', - 'upload_date': '20130703', - 'title': 'Justin Timberlake - Tunnel Vision (Official Music Video) (Explicit)', - 'alt_title': 'Tunnel Vision', - 'description': 'md5:07dab3356cde4199048e4c7cd93471e1', - 'duration': 419, - 'uploader': 'justintimberlakeVEVO', - 'uploader_id': 'justintimberlakeVEVO', - 'uploader_url': r're:https?://(?:www\.)?youtube\.com/user/justintimberlakeVEVO', - 'creator': 'Justin Timberlake', - 'track': 'Tunnel Vision', - 'artist': 'Justin Timberlake', - 'age_limit': 18, - } - }, { 'url': '//www.YouTube.com/watch?v=yZIXLfi8CZQ', 'note': 'Embed-only video (#1746)', @@ -677,42 +635,6 @@ class YoutubeIE(YoutubeBaseInfoExtractor): }, 'skip': 'format 141 not served anymore', }, - # DASH manifest with encrypted signature - { - 'url': 'https://www.youtube.com/watch?v=IB3lcPjvWLA', - 'info_dict': { - 'id': 'IB3lcPjvWLA', - 'ext': 'm4a', - 'title': 'Afrojack, Spree Wilson - The Spark (Official Music Video) ft. Spree Wilson', - 'description': 'md5:8f5e2b82460520b619ccac1f509d43bf', - 'duration': 244, - 'uploader': 'AfrojackVEVO', - 'uploader_id': 'AfrojackVEVO', - 'upload_date': '20131011', - }, - 'params': { - 'youtube_include_dash_manifest': True, - 'format': '141/bestaudio[ext=m4a]', - }, - }, - # JS player signature function name containing $ - { - 'url': 'https://www.youtube.com/watch?v=nfWlot6h_JM', - 'info_dict': { - 'id': 'nfWlot6h_JM', - 'ext': 'm4a', - 'title': 'Taylor Swift - Shake It Off', - 'description': 'md5:307195cd21ff7fa352270fe884570ef0', - 'duration': 242, - 'uploader': 'TaylorSwiftVEVO', - 'uploader_id': 'TaylorSwiftVEVO', - 'upload_date': '20140818', - }, - 'params': { - 'youtube_include_dash_manifest': True, - 'format': '141/bestaudio[ext=m4a]', - }, - }, # Controversy video { 'url': 'https://www.youtube.com/watch?v=T4XJQO3qol8', @@ -728,59 +650,6 @@ class YoutubeIE(YoutubeBaseInfoExtractor): 'description': 'SUBSCRIBE: http://www.youtube.com/saturninefilms\n\nEven Obama has taken a stand against freedom on this issue: http://www.huffingtonpost.com/2010/09/09/obama-gma-interview-quran_n_710282.html', } }, - # Normal age-gate video (No vevo, embed allowed) - { - 'url': 'https://youtube.com/watch?v=HtVdAasjOgU', - 'info_dict': { - 'id': 'HtVdAasjOgU', - 'ext': 'mp4', - 'title': 'The Witcher 3: Wild Hunt - The Sword Of Destiny Trailer', - 'description': r're:(?s).{100,}About the Game\n.*?The Witcher 3: Wild Hunt.{100,}', - 'duration': 142, - 'uploader': 'The Witcher', - 'uploader_id': 'WitcherGame', - 'uploader_url': r're:https?://(?:www\.)?youtube\.com/user/WitcherGame', - 'upload_date': '20140605', - 'age_limit': 18, - }, - }, - # Age-gate video with encrypted signature - { - 'url': 'https://www.youtube.com/watch?v=6kLq3WMV1nU', - 'info_dict': { - 'id': '6kLq3WMV1nU', - 'ext': 'mp4', - 'title': 'Dedication To My Ex (Miss That) (Lyric Video)', - 'description': 'md5:33765bb339e1b47e7e72b5490139bb41', - 'duration': 246, - 'uploader': 'LloydVEVO', - 'uploader_id': 'LloydVEVO', - 'uploader_url': r're:https?://(?:www\.)?youtube\.com/user/LloydVEVO', - 'upload_date': '20110629', - 'age_limit': 18, - }, - }, - # video_info is None (https://github.com/ytdl-org/youtube-dl/issues/4421) - # YouTube Red ad is not captured for creator - { - 'url': '__2ABJjxzNo', - 'info_dict': { - 'id': '__2ABJjxzNo', - 'ext': 'mp4', - 'duration': 266, - 'upload_date': '20100430', - 'uploader_id': 'deadmau5', - 'uploader_url': r're:https?://(?:www\.)?youtube\.com/user/deadmau5', - 'creator': 'Dada Life, deadmau5', - 'description': 'md5:12c56784b8032162bb936a5f76d55360', - 'uploader': 'deadmau5', - 'title': 'Deadmau5 - Some Chords (HD)', - 'alt_title': 'This Machine Kills Some Chords', - }, - 'expected_warnings': [ - 'DASH manifest missing', - ] - }, # Olympics (https://github.com/ytdl-org/youtube-dl/issues/4431) { 'url': 'lqQg6PlCWgI', From 3f8bb8677f0635d056bdfd298bb96ae274f31ff3 Mon Sep 17 00:00:00 2001 From: Dominika Date: Fri, 23 Oct 2020 20:14:17 -0400 Subject: [PATCH 02/13] [license] Update license to add conditions for copyright laws --- LICENSE | 13 +++++++++---- README.md | 2 +- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/LICENSE b/LICENSE index 68a49daad8..37a4a43411 100644 --- a/LICENSE +++ b/LICENSE @@ -1,9 +1,16 @@ -This is free and unencumbered software released into the public domain. +This is free and unencumbered software released into the public domain, +under the following conditions: + +The software must not be used or distrbuted in binary or source form +for the intention of circumventing Intellectual Property laws in any +jurisdictions that recognize copyright laws, nor can it be used for +the intention of downloading copywrited content which is not released +in the Public Domain. Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any -means. +means, with the exception of the aforementioned conditions. In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the @@ -20,5 +27,3 @@ IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. - -For more information, please refer to diff --git a/README.md b/README.md index cd8856828f..c600ca4ea0 100644 --- a/README.md +++ b/README.md @@ -1441,6 +1441,6 @@ It may sound strange, but some bug reports we receive are completely unrelated t # COPYRIGHT -youtube-dl is released into the public domain by the copyright holders. +youtube-dl is released into the public domain by the copyright holders, under several conditions. Please read the [LICENSE](https://github.com/l1ving/youtube-dl/blob/master/LICENSE) This README file was originally written by [Daniel Bolton](https://github.com/dbbolton) and is likewise released into the public domain. From 3c45145f98e60d37abdc7cfc6266209348aba6da Mon Sep 17 00:00:00 2001 From: Dominika Date: Fri, 23 Oct 2020 20:19:24 -0400 Subject: [PATCH 03/13] [fix] Fix Travis CI badge --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index c600ca4ea0..6ae8a01f91 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![Build Status](https://travis-ci.org/ytdl-org/youtube-dl.svg?branch=master)](https://travis-ci.org/ytdl-org/youtube-dl) +[![Build Status](https://travis-ci.org/l1ving/youtube-dl.svg?branch=master)](https://travis-ci.org/l1ving/youtube-dl) youtube-dl - download videos from youtube.com or other video platforms From 22d5d9f5d0aacf0e85dba79f7aaf72024a06888f Mon Sep 17 00:00:00 2001 From: Dominika Date: Fri, 23 Oct 2020 20:20:55 -0400 Subject: [PATCH 04/13] [test] Trigger Travis CI build From b46d3c2282046deac96a57c43c261222cf5be1cc Mon Sep 17 00:00:00 2001 From: Dominika Date: Fri, 23 Oct 2020 20:22:10 -0400 Subject: [PATCH 05/13] [fix] Typo in LICENSE --- LICENSE | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/LICENSE b/LICENSE index 37a4a43411..5cde317c0e 100644 --- a/LICENSE +++ b/LICENSE @@ -1,7 +1,7 @@ This is free and unencumbered software released into the public domain, under the following conditions: -The software must not be used or distrbuted in binary or source form +The software must not be used or distributed in binary or source form for the intention of circumventing Intellectual Property laws in any jurisdictions that recognize copyright laws, nor can it be used for the intention of downloading copywrited content which is not released From 24553a9aee74cd4418720e0544b670283955f636 Mon Sep 17 00:00:00 2001 From: Skylar Ittner Date: Fri, 23 Oct 2020 19:41:29 -0600 Subject: [PATCH 06/13] Fix license problems while still discouraging illegal use --- LICENSE | 21 +++++++++++++-------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/LICENSE b/LICENSE index 5cde317c0e..d0df347414 100644 --- a/LICENSE +++ b/LICENSE @@ -1,16 +1,19 @@ -This is free and unencumbered software released into the public domain, -under the following conditions: +The authors of this software recognize that most technologies can be +used for lawful and unlawful purposes. The authors request that this +software not be used to violate any local laws. The authors recognize +that this is public domain code, that they have no real power +to dictate how it is used other than a polite non-binding request, +and therefore that they cannot be held responsible for what anyone +chooses to do with it. -The software must not be used or distributed in binary or source form -for the intention of circumventing Intellectual Property laws in any -jurisdictions that recognize copyright laws, nor can it be used for -the intention of downloading copywrited content which is not released -in the Public Domain. +--- + +This is free and unencumbered software released into the public domain. Anyone is free to copy, modify, publish, use, compile, sell, or distribute this software, either in source code form or as a compiled binary, for any purpose, commercial or non-commercial, and by any -means, with the exception of the aforementioned conditions. +means. In jurisdictions that recognize copyright laws, the author or authors of this software dedicate any and all copyright interest in the @@ -27,3 +30,5 @@ IN NO EVENT SHALL THE AUTHORS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + +For more information, please refer to From bbcb43946d4c49f43a57611929dca75be847d333 Mon Sep 17 00:00:00 2001 From: Skylar Ittner Date: Fri, 23 Oct 2020 21:36:35 -0600 Subject: [PATCH 07/13] Add download mirror links (#3) --- README.md | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 6ae8a01f91..27301e39c9 100644 --- a/README.md +++ b/README.md @@ -21,13 +21,18 @@ To install it right away for all UNIX users (Linux, macOS, etc.), type: sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl + +Mirror: + + sudo curl -L https://dl.netsyms.net/programs/youtube-dl/latest/youtube-dl -o /usr/local/bin/youtube-dl + sudo chmod a+rx /usr/local/bin/youtube-dl If you do not have curl, you can alternatively use a recent wget: sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl -Windows users can [download an .exe file](https://yt-dl.org/latest/youtube-dl.exe) and place it in any location on their [PATH](https://en.wikipedia.org/wiki/PATH_%28variable%29) except for `%SYSTEMROOT%\System32` (e.g. **do not** put in `C:\Windows\System32`). +Windows users can [download an .exe file](https://yt-dl.org/latest/youtube-dl.exe) ([mirror](https://dl.netsyms.net/programs/youtube-dl/latest/youtube-dl.exe)) and place it in any location on their [PATH](https://en.wikipedia.org/wiki/PATH_%28variable%29) except for `%SYSTEMROOT%\System32` (e.g. **do not** put in `C:\Windows\System32`). You can also use pip: @@ -1441,6 +1446,6 @@ It may sound strange, but some bug reports we receive are completely unrelated t # COPYRIGHT -youtube-dl is released into the public domain by the copyright holders, under several conditions. Please read the [LICENSE](https://github.com/l1ving/youtube-dl/blob/master/LICENSE) +youtube-dl is released into the public domain by the copyright holders. This README file was originally written by [Daniel Bolton](https://github.com/dbbolton) and is likewise released into the public domain. From 259734bfe84e42be975bccae27f477c9f90303f2 Mon Sep 17 00:00:00 2001 From: Dominika Date: Sat, 24 Oct 2020 22:23:19 -0400 Subject: [PATCH 08/13] [cleanup] Remove unnecessary mirrors, yt-dl's website is updated --- README.md | 7 +------ 1 file changed, 1 insertion(+), 6 deletions(-) diff --git a/README.md b/README.md index 27301e39c9..da0f7b7274 100644 --- a/README.md +++ b/README.md @@ -21,18 +21,13 @@ To install it right away for all UNIX users (Linux, macOS, etc.), type: sudo curl -L https://yt-dl.org/downloads/latest/youtube-dl -o /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl - -Mirror: - - sudo curl -L https://dl.netsyms.net/programs/youtube-dl/latest/youtube-dl -o /usr/local/bin/youtube-dl - sudo chmod a+rx /usr/local/bin/youtube-dl If you do not have curl, you can alternatively use a recent wget: sudo wget https://yt-dl.org/downloads/latest/youtube-dl -O /usr/local/bin/youtube-dl sudo chmod a+rx /usr/local/bin/youtube-dl -Windows users can [download an .exe file](https://yt-dl.org/latest/youtube-dl.exe) ([mirror](https://dl.netsyms.net/programs/youtube-dl/latest/youtube-dl.exe)) and place it in any location on their [PATH](https://en.wikipedia.org/wiki/PATH_%28variable%29) except for `%SYSTEMROOT%\System32` (e.g. **do not** put in `C:\Windows\System32`). +Windows users can [download an .exe file](https://yt-dl.org/latest/youtube-dl.exe) and place it in any location on their [PATH](https://en.wikipedia.org/wiki/PATH_%28variable%29) except for `%SYSTEMROOT%\System32` (e.g. **do not** put in `C:\Windows\System32`). You can also use pip: From 4fcd20a46cbf35ebbeaf06dde3999ad4309d7a8e Mon Sep 17 00:00:00 2001 From: Dominika Date: Sun, 25 Oct 2020 14:34:37 -0400 Subject: [PATCH 09/13] [feature] Add changes to README --- README.md | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/README.md b/README.md index da0f7b7274..392ec68043 100644 --- a/README.md +++ b/README.md @@ -2,6 +2,7 @@ youtube-dl - download videos from youtube.com or other video platforms +- [CHANGES](#changes) - [INSTALLATION](#installation) - [DESCRIPTION](#description) - [OPTIONS](#options) @@ -15,6 +16,10 @@ youtube-dl - download videos from youtube.com or other video platforms - [BUGS](#bugs) - [COPYRIGHT](#copyright) +# CHANGES + +You can view the changes made to ytdl-org/youtube-dl [here](https://github.com/l1ving/youtube-dl/compare/416da574ec0df3388f652e44f7fe71b1e3a4701f...master) + # INSTALLATION To install it right away for all UNIX users (Linux, macOS, etc.), type: From 6787397ab0878afc44f430090da899fa0ccbbb32 Mon Sep 17 00:00:00 2001 From: Dominika Date: Tue, 27 Oct 2020 13:19:32 -0400 Subject: [PATCH 10/13] [ci] Switch from travis-ci.org to travis-ci.com Closes #8 --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index 392ec68043..d7a3fdb3ed 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -[![Build Status](https://travis-ci.org/l1ving/youtube-dl.svg?branch=master)](https://travis-ci.org/l1ving/youtube-dl) +[![Build Status](https://travis-ci.com/l1ving/youtube-dl.svg?branch=master)](https://travis-ci.com/l1ving/youtube-dl) youtube-dl - download videos from youtube.com or other video platforms From 8462b9408afef9a838d2f36ad4b1ac51515a271b Mon Sep 17 00:00:00 2001 From: living Date: Tue, 27 Oct 2020 13:29:51 -0400 Subject: [PATCH 11/13] [docs] Added links to archive and tags --- README.md | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/README.md b/README.md index d7a3fdb3ed..ac739e4a13 100644 --- a/README.md +++ b/README.md @@ -20,6 +20,10 @@ youtube-dl - download videos from youtube.com or other video platforms You can view the changes made to ytdl-org/youtube-dl [here](https://github.com/l1ving/youtube-dl/compare/416da574ec0df3388f652e44f7fe71b1e3a4701f...master) +You can view the archived tags here: [youtube-dl/releases](https://github.com/l1ving/youtube-dl/releases) + +You can view the archived unmerged pull requests here: [youtube-dl/tree/archive/recovered-github-prs](https://github.com/l1ving/youtube-dl/tree/archive/recovered-github-prs) + # INSTALLATION To install it right away for all UNIX users (Linux, macOS, etc.), type: From 6a82b63f29dc3014038d79f814477a33b0189aa8 Mon Sep 17 00:00:00 2001 From: Dominika Date: Thu, 29 Oct 2020 11:08:31 -0400 Subject: [PATCH 12/13] [fix] Unable to extract JS player URL Closes #12 --- youtube_dl/extractor/youtube.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py index 95849ef454..1e0a8f9918 100644 --- a/youtube_dl/extractor/youtube.py +++ b/youtube_dl/extractor/youtube.py @@ -1955,7 +1955,7 @@ def _extract_filesize(media_url): if cipher: if 's' in url_data or self._downloader.params.get('youtube_include_dash_manifest', True): - ASSETS_RE = r'"assets":.+?"js":\s*("[^"]+")' + ASSETS_RE = [ r'"assets":.+?"js":\s*("[^"]+")', r'"jsUrl":("[^"]+")' ] jsplayer_url_json = self._search_regex( ASSETS_RE, embed_webpage if age_gate else video_webpage, From c61a20804ddd5e1248516811a5038c0775245389 Mon Sep 17 00:00:00 2001 From: living Date: Thu, 29 Oct 2020 15:00:23 -0400 Subject: [PATCH 13/13] [fix] Build fail. --- youtube_dl/extractor/youtube.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/youtube_dl/extractor/youtube.py b/youtube_dl/extractor/youtube.py index 1e0a8f9918..0649dc6e3e 100644 --- a/youtube_dl/extractor/youtube.py +++ b/youtube_dl/extractor/youtube.py @@ -1955,7 +1955,7 @@ def _extract_filesize(media_url): if cipher: if 's' in url_data or self._downloader.params.get('youtube_include_dash_manifest', True): - ASSETS_RE = [ r'"assets":.+?"js":\s*("[^"]+")', r'"jsUrl":("[^"]+")' ] + ASSETS_RE = [r'"assets":.+?"js":\s*("[^"]+")', r'"jsUrl":("[^"]+")'] jsplayer_url_json = self._search_regex( ASSETS_RE, embed_webpage if age_gate else video_webpage,