mirror of
				https://github.com/yt-dlp/yt-dlp.git
				synced 2025-10-30 22:25:19 +00:00 
			
		
		
		
	[skip travis] renaming
to avoid using same folder when using pip install for example
This commit is contained in:
		| @@ -2,8 +2,8 @@ include README.md | ||||
| include LICENSE | ||||
| include AUTHORS | ||||
| include ChangeLog | ||||
| include youtube-dl.bash-completion | ||||
| include youtube-dl.fish | ||||
| include youtube-dl.1 | ||||
| include youtube-dlc.bash-completion | ||||
| include youtube-dlc.fish | ||||
| include youtube-dlc.1 | ||||
| recursive-include docs Makefile conf.py *.rst | ||||
| recursive-include test * | ||||
|   | ||||
							
								
								
									
										84
									
								
								Makefile
									
									
									
									
									
								
							
							
						
						
									
										84
									
								
								Makefile
									
									
									
									
									
								
							| @@ -1,7 +1,7 @@ | ||||
| all: youtube-dl README.md CONTRIBUTING.md README.txt youtube-dl.1 youtube-dl.bash-completion youtube-dl.zsh youtube-dl.fish supportedsites | ||||
| all: youtube-dlc README.md CONTRIBUTING.md README.txt youtube-dlc.1 youtube-dlc.bash-completion youtube-dlc.zsh youtube-dlc.fish supportedsites | ||||
|  | ||||
| clean: | ||||
| 	rm -rf youtube-dl.1.temp.md youtube-dl.1 youtube-dl.bash-completion README.txt MANIFEST build/ dist/ .coverage cover/ youtube-dl.tar.gz youtube-dl.zsh youtube-dl.fish youtube_dl/extractor/lazy_extractors.py *.dump *.part* *.ytdl *.info.json *.mp4 *.m4a *.flv *.mp3 *.avi *.mkv *.webm *.3gp *.wav *.ape *.swf *.jpg *.png CONTRIBUTING.md.tmp youtube-dl youtube-dl.exe | ||||
| 	rm -rf youtube-dlc.1.temp.md youtube-dlc.1 youtube-dlc.bash-completion README.txt MANIFEST build/ dist/ .coverage cover/ youtube-dlc.tar.gz youtube-dlc.zsh youtube-dlc.fish youtube_dlc/extractor/lazy_extractors.py *.dump *.part* *.ytdl *.info.json *.mp4 *.m4a *.flv *.mp3 *.avi *.mkv *.webm *.3gp *.wav *.ape *.swf *.jpg *.png CONTRIBUTING.md.tmp youtube-dlc youtube-dlc.exe | ||||
| 	find . -name "*.pyc" -delete | ||||
| 	find . -name "*.class" -delete | ||||
|  | ||||
| @@ -17,23 +17,23 @@ SYSCONFDIR = $(shell if [ $(PREFIX) = /usr -o $(PREFIX) = /usr/local ]; then ech | ||||
| # set markdown input format to "markdown-smart" for pandoc version 2 and to "markdown" for pandoc prior to version 2 | ||||
| MARKDOWN = $(shell if [ `pandoc -v | head -n1 | cut -d" " -f2 | head -c1` = "2" ]; then echo markdown-smart; else echo markdown; fi) | ||||
|  | ||||
| install: youtube-dl youtube-dl.1 youtube-dl.bash-completion youtube-dl.zsh youtube-dl.fish | ||||
| install: youtube-dlc youtube-dlc.1 youtube-dlc.bash-completion youtube-dlc.zsh youtube-dlc.fish | ||||
| 	install -d $(DESTDIR)$(BINDIR) | ||||
| 	install -m 755 youtube-dl $(DESTDIR)$(BINDIR) | ||||
| 	install -m 755 youtube-dlc $(DESTDIR)$(BINDIR) | ||||
| 	install -d $(DESTDIR)$(MANDIR)/man1 | ||||
| 	install -m 644 youtube-dl.1 $(DESTDIR)$(MANDIR)/man1 | ||||
| 	install -m 644 youtube-dlc.1 $(DESTDIR)$(MANDIR)/man1 | ||||
| 	install -d $(DESTDIR)$(SYSCONFDIR)/bash_completion.d | ||||
| 	install -m 644 youtube-dl.bash-completion $(DESTDIR)$(SYSCONFDIR)/bash_completion.d/youtube-dl | ||||
| 	install -m 644 youtube-dlc.bash-completion $(DESTDIR)$(SYSCONFDIR)/bash_completion.d/youtube-dlc | ||||
| 	install -d $(DESTDIR)$(SHAREDIR)/zsh/site-functions | ||||
| 	install -m 644 youtube-dl.zsh $(DESTDIR)$(SHAREDIR)/zsh/site-functions/_youtube-dl | ||||
| 	install -m 644 youtube-dlc.zsh $(DESTDIR)$(SHAREDIR)/zsh/site-functions/_youtube-dlc | ||||
| 	install -d $(DESTDIR)$(SYSCONFDIR)/fish/completions | ||||
| 	install -m 644 youtube-dl.fish $(DESTDIR)$(SYSCONFDIR)/fish/completions/youtube-dl.fish | ||||
| 	install -m 644 youtube-dlc.fish $(DESTDIR)$(SYSCONFDIR)/fish/completions/youtube-dlc.fish | ||||
|  | ||||
| codetest: | ||||
| 	flake8 . | ||||
|  | ||||
| test: | ||||
| 	#nosetests --with-coverage --cover-package=youtube_dl --cover-html --verbose --processes 4 test | ||||
| 	#nosetests --with-coverage --cover-package=youtube_dlc --cover-html --verbose --processes 4 test | ||||
| 	nosetests --verbose test | ||||
| 	$(MAKE) codetest | ||||
|  | ||||
| @@ -51,34 +51,34 @@ offlinetest: codetest | ||||
| 		--exclude test_youtube_lists.py \ | ||||
| 		--exclude test_youtube_signature.py | ||||
|  | ||||
| tar: youtube-dl.tar.gz | ||||
| tar: youtube-dlc.tar.gz | ||||
|  | ||||
| .PHONY: all clean install test tar bash-completion pypi-files zsh-completion fish-completion ot offlinetest codetest supportedsites | ||||
|  | ||||
| pypi-files: youtube-dl.bash-completion README.txt youtube-dl.1 youtube-dl.fish | ||||
| pypi-files: youtube-dlc.bash-completion README.txt youtube-dlc.1 youtube-dlc.fish | ||||
|  | ||||
| youtube-dl: youtube_dl/*.py youtube_dl/*/*.py | ||||
| youtube-dlc: youtube_dlc/*.py youtube_dlc/*/*.py | ||||
| 	mkdir -p zip | ||||
| 	for d in youtube_dl youtube_dl/downloader youtube_dl/extractor youtube_dl/postprocessor ; do \ | ||||
| 	for d in youtube_dlc youtube_dlc/downloader youtube_dlc/extractor youtube_dlc/postprocessor ; do \ | ||||
| 	  mkdir -p zip/$$d ;\ | ||||
| 	  cp -pPR $$d/*.py zip/$$d/ ;\ | ||||
| 	done | ||||
| 	touch -t 200001010101 zip/youtube_dl/*.py zip/youtube_dl/*/*.py | ||||
| 	mv zip/youtube_dl/__main__.py zip/ | ||||
| 	cd zip ; zip -q ../youtube-dl youtube_dl/*.py youtube_dl/*/*.py __main__.py | ||||
| 	touch -t 200001010101 zip/youtube_dlc/*.py zip/youtube_dlc/*/*.py | ||||
| 	mv zip/youtube_dlc/__main__.py zip/ | ||||
| 	cd zip ; zip -q ../youtube-dlc youtube_dlc/*.py youtube_dlc/*/*.py __main__.py | ||||
| 	rm -rf zip | ||||
| 	echo '#!$(PYTHON)' > youtube-dl | ||||
| 	cat youtube-dl.zip >> youtube-dl | ||||
| 	rm youtube-dl.zip | ||||
| 	chmod a+x youtube-dl | ||||
| 	echo '#!$(PYTHON)' > youtube-dlc | ||||
| 	cat youtube-dlc.zip >> youtube-dlc | ||||
| 	rm youtube-dlc.zip | ||||
| 	chmod a+x youtube-dlc | ||||
|  | ||||
| README.md: youtube_dl/*.py youtube_dl/*/*.py | ||||
| 	COLUMNS=80 $(PYTHON) youtube_dl/__main__.py --help | $(PYTHON) devscripts/make_readme.py | ||||
| README.md: youtube_dlc/*.py youtube_dlc/*/*.py | ||||
| 	COLUMNS=80 $(PYTHON) youtube_dlc/__main__.py --help | $(PYTHON) devscripts/make_readme.py | ||||
|  | ||||
| CONTRIBUTING.md: README.md | ||||
| 	$(PYTHON) devscripts/make_contributing.py README.md CONTRIBUTING.md | ||||
|  | ||||
| issuetemplates: devscripts/make_issue_template.py .github/ISSUE_TEMPLATE_tmpl/1_broken_site.md .github/ISSUE_TEMPLATE_tmpl/2_site_support_request.md .github/ISSUE_TEMPLATE_tmpl/3_site_feature_request.md .github/ISSUE_TEMPLATE_tmpl/4_bug_report.md .github/ISSUE_TEMPLATE_tmpl/5_feature_request.md youtube_dl/version.py | ||||
| issuetemplates: devscripts/make_issue_template.py .github/ISSUE_TEMPLATE_tmpl/1_broken_site.md .github/ISSUE_TEMPLATE_tmpl/2_site_support_request.md .github/ISSUE_TEMPLATE_tmpl/3_site_feature_request.md .github/ISSUE_TEMPLATE_tmpl/4_bug_report.md .github/ISSUE_TEMPLATE_tmpl/5_feature_request.md youtube_dlc/version.py | ||||
| 	$(PYTHON) devscripts/make_issue_template.py .github/ISSUE_TEMPLATE_tmpl/1_broken_site.md .github/ISSUE_TEMPLATE/1_broken_site.md | ||||
| 	$(PYTHON) devscripts/make_issue_template.py .github/ISSUE_TEMPLATE_tmpl/2_site_support_request.md .github/ISSUE_TEMPLATE/2_site_support_request.md | ||||
| 	$(PYTHON) devscripts/make_issue_template.py .github/ISSUE_TEMPLATE_tmpl/3_site_feature_request.md .github/ISSUE_TEMPLATE/3_site_feature_request.md | ||||
| @@ -91,34 +91,34 @@ supportedsites: | ||||
| README.txt: README.md | ||||
| 	pandoc -f $(MARKDOWN) -t plain README.md -o README.txt | ||||
|  | ||||
| youtube-dl.1: README.md | ||||
| 	$(PYTHON) devscripts/prepare_manpage.py youtube-dl.1.temp.md | ||||
| 	pandoc -s -f $(MARKDOWN) -t man youtube-dl.1.temp.md -o youtube-dl.1 | ||||
| 	rm -f youtube-dl.1.temp.md | ||||
| youtube-dlc.1: README.md | ||||
| 	$(PYTHON) devscripts/prepare_manpage.py youtube-dlc.1.temp.md | ||||
| 	pandoc -s -f $(MARKDOWN) -t man youtube-dlc.1.temp.md -o youtube-dlc.1 | ||||
| 	rm -f youtube-dlc.1.temp.md | ||||
|  | ||||
| youtube-dl.bash-completion: youtube_dl/*.py youtube_dl/*/*.py devscripts/bash-completion.in | ||||
| youtube-dlc.bash-completion: youtube_dlc/*.py youtube_dlc/*/*.py devscripts/bash-completion.in | ||||
| 	$(PYTHON) devscripts/bash-completion.py | ||||
|  | ||||
| bash-completion: youtube-dl.bash-completion | ||||
| bash-completion: youtube-dlc.bash-completion | ||||
|  | ||||
| youtube-dl.zsh: youtube_dl/*.py youtube_dl/*/*.py devscripts/zsh-completion.in | ||||
| youtube-dlc.zsh: youtube_dlc/*.py youtube_dlc/*/*.py devscripts/zsh-completion.in | ||||
| 	$(PYTHON) devscripts/zsh-completion.py | ||||
|  | ||||
| zsh-completion: youtube-dl.zsh | ||||
| zsh-completion: youtube-dlc.zsh | ||||
|  | ||||
| youtube-dl.fish: youtube_dl/*.py youtube_dl/*/*.py devscripts/fish-completion.in | ||||
| youtube-dlc.fish: youtube_dlc/*.py youtube_dlc/*/*.py devscripts/fish-completion.in | ||||
| 	$(PYTHON) devscripts/fish-completion.py | ||||
|  | ||||
| fish-completion: youtube-dl.fish | ||||
| fish-completion: youtube-dlc.fish | ||||
|  | ||||
| lazy-extractors: youtube_dl/extractor/lazy_extractors.py | ||||
| lazy-extractors: youtube_dlc/extractor/lazy_extractors.py | ||||
|  | ||||
| _EXTRACTOR_FILES = $(shell find youtube_dl/extractor -iname '*.py' -and -not -iname 'lazy_extractors.py') | ||||
| youtube_dl/extractor/lazy_extractors.py: devscripts/make_lazy_extractors.py devscripts/lazy_load_template.py $(_EXTRACTOR_FILES) | ||||
| _EXTRACTOR_FILES = $(shell find youtube_dlc/extractor -iname '*.py' -and -not -iname 'lazy_extractors.py') | ||||
| youtube_dlc/extractor/lazy_extractors.py: devscripts/make_lazy_extractors.py devscripts/lazy_load_template.py $(_EXTRACTOR_FILES) | ||||
| 	$(PYTHON) devscripts/make_lazy_extractors.py $@ | ||||
|  | ||||
| youtube-dl.tar.gz: youtube-dl README.md README.txt youtube-dl.1 youtube-dl.bash-completion youtube-dl.zsh youtube-dl.fish ChangeLog AUTHORS | ||||
| 	@tar -czf youtube-dl.tar.gz --transform "s|^|youtube-dl/|" --owner 0 --group 0 \ | ||||
| youtube-dlc.tar.gz: youtube-dlc README.md README.txt youtube-dlc.1 youtube-dlc.bash-completion youtube-dlc.zsh youtube-dlc.fish ChangeLog AUTHORS | ||||
| 	@tar -czf youtube-dlc.tar.gz --transform "s|^|youtube-dlc/|" --owner 0 --group 0 \ | ||||
| 		--exclude '*.DS_Store' \ | ||||
| 		--exclude '*.kate-swp' \ | ||||
| 		--exclude '*.pyc' \ | ||||
| @@ -128,8 +128,8 @@ youtube-dl.tar.gz: youtube-dl README.md README.txt youtube-dl.1 youtube-dl.bash- | ||||
| 		--exclude '.git' \ | ||||
| 		--exclude 'docs/_build' \ | ||||
| 		-- \ | ||||
| 		bin devscripts test youtube_dl docs \ | ||||
| 		bin devscripts test youtube_dlc docs \ | ||||
| 		ChangeLog AUTHORS LICENSE README.md README.txt \ | ||||
| 		Makefile MANIFEST.in youtube-dl.1 youtube-dl.bash-completion \ | ||||
| 		youtube-dl.zsh youtube-dl.fish setup.py setup.cfg \ | ||||
| 		youtube-dl | ||||
| 		Makefile MANIFEST.in youtube-dlc.1 youtube-dlc.bash-completion \ | ||||
| 		youtube-dlc.zsh youtube-dlc.fish setup.py setup.cfg \ | ||||
| 		youtube-dlc | ||||
|   | ||||
							
								
								
									
										28
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										28
									
								
								README.md
									
									
									
									
									
								
							| @@ -34,7 +34,7 @@ Using curl: | ||||
| To build the Windows executable yourself | ||||
|  | ||||
|     python -m pip install --upgrade pyinstaller | ||||
|     pyinstaller.exe youtube_dl\__main__.py --onefile --name youtube-dlc | ||||
|     pyinstaller.exe youtube_dlc\__main__.py --onefile --name youtube-dlc | ||||
|      | ||||
| Or simply execute the `make_win.bat` if pyinstaller is installed. | ||||
| There will be a `youtube-dlc.exe` in `/dist`   | ||||
| @@ -71,18 +71,18 @@ Then simply type this | ||||
|                                      extractor | ||||
|     --default-search PREFIX          Use this prefix for unqualified URLs. For | ||||
|                                      example "gvsearch2:" downloads two videos | ||||
|                                      from google videos for youtube-dl "large | ||||
|                                      from google videos for youtube-dlc "large | ||||
|                                      apple". Use the value "auto" to let | ||||
|                                      youtube-dl guess ("auto_warning" to emit a | ||||
|                                      youtube-dlc guess ("auto_warning" to emit a | ||||
|                                      warning when guessing). "error" just throws | ||||
|                                      an error. The default value "fixup_error" | ||||
|                                      repairs broken URLs, but emits an error if | ||||
|                                      this is not possible instead of searching. | ||||
|     --ignore-config                  Do not read configuration files. When given | ||||
|                                      in the global configuration file | ||||
|                                      /etc/youtube-dl.conf: Do not read the user | ||||
|                                      /etc/youtube-dlc.conf: Do not read the user | ||||
|                                      configuration in ~/.config/youtube- | ||||
|                                      dl/config (%APPDATA%/youtube-dl/config.txt | ||||
|                                      dl/config (%APPDATA%/youtube-dlc/config.txt | ||||
|                                      on Windows) | ||||
|     --config-location PATH           Location of the configuration file; either | ||||
|                                      the path to the config or its containing | ||||
| @@ -240,7 +240,7 @@ Then simply type this | ||||
|                                      filenames | ||||
|     -w, --no-overwrites              Do not overwrite files | ||||
|     -c, --continue                   Force resume of partially downloaded files. | ||||
|                                      By default, youtube-dl will resume | ||||
|                                      By default, youtube-dlc will resume | ||||
|                                      downloads if possible. | ||||
|     --no-continue                    Do not resume partially downloaded files | ||||
|                                      (restart from beginning) | ||||
| @@ -258,11 +258,11 @@ Then simply type this | ||||
|                                      option) | ||||
|     --cookies FILE                   File to read cookies from and dump cookie | ||||
|                                      jar in | ||||
|     --cache-dir DIR                  Location in the filesystem where youtube-dl | ||||
|     --cache-dir DIR                  Location in the filesystem where youtube-dlc | ||||
|                                      can store some downloaded information | ||||
|                                      permanently. By default | ||||
|                                      $XDG_CACHE_HOME/youtube-dl or | ||||
|                                      ~/.cache/youtube-dl . At the moment, only | ||||
|                                      $XDG_CACHE_HOME/youtube-dlc or | ||||
|                                      ~/.cache/youtube-dlc . At the moment, only | ||||
|                                      YouTube player files (for videos with | ||||
|                                      obfuscated signatures) are cached, but that | ||||
|                                      may change. | ||||
| @@ -308,8 +308,8 @@ Then simply type this | ||||
|                                      files in the current directory to debug | ||||
|                                      problems | ||||
|     --print-traffic                  Display sent and read HTTP traffic | ||||
|     -C, --call-home                  Contact the youtube-dl server for debugging | ||||
|     --no-call-home                   Do NOT contact the youtube-dl server for | ||||
|     -C, --call-home                  Contact the youtube-dlc server for debugging | ||||
|     --no-call-home                   Do NOT contact the youtube-dlc server for | ||||
|                                      debugging | ||||
|  | ||||
| ## Workarounds: | ||||
| @@ -370,7 +370,7 @@ Then simply type this | ||||
| ## Authentication Options: | ||||
|     -u, --username USERNAME          Login with this account ID | ||||
|     -p, --password PASSWORD          Account password. If this option is left | ||||
|                                      out, youtube-dl will ask interactively. | ||||
|                                      out, youtube-dlc will ask interactively. | ||||
|     -2, --twofactor TWOFACTOR        Two-factor authentication code | ||||
|     -n, --netrc                      Use .netrc authentication data | ||||
|     --video-password PASSWORD        Video password (vimeo, smotri, youku) | ||||
| @@ -381,7 +381,7 @@ Then simply type this | ||||
|                                      a list of available MSOs | ||||
|     --ap-username USERNAME           Multiple-system operator account login | ||||
|     --ap-password PASSWORD           Multiple-system operator account password. | ||||
|                                      If this option is left out, youtube-dl will | ||||
|                                      If this option is left out, youtube-dlc will | ||||
|                                      ask interactively. | ||||
|     --ap-list-mso                    List all supported multiple-system | ||||
|                                      operators | ||||
| @@ -444,6 +444,6 @@ Then simply type this | ||||
|  | ||||
| # COPYRIGHT | ||||
|  | ||||
| youtube-dl is released into the public domain by the copyright holders. | ||||
| youtube-dlc 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. | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| __youtube_dl() | ||||
| __youtube_dlc() | ||||
| { | ||||
|     local cur prev opts fileopts diropts keywords | ||||
|     COMPREPLY=() | ||||
| @@ -26,4 +26,4 @@ __youtube_dl() | ||||
|     fi | ||||
| } | ||||
|  | ||||
| complete -F __youtube_dl youtube-dl | ||||
| complete -F __youtube_dlc youtube-dlc | ||||
|   | ||||
| @@ -6,9 +6,9 @@ from os.path import dirname as dirn | ||||
| import sys | ||||
|  | ||||
| sys.path.insert(0, dirn(dirn((os.path.abspath(__file__))))) | ||||
| import youtube_dl | ||||
| import youtube_dlc | ||||
|  | ||||
| BASH_COMPLETION_FILE = "youtube-dl.bash-completion" | ||||
| BASH_COMPLETION_FILE = "youtube-dlc.bash-completion" | ||||
| BASH_COMPLETION_TEMPLATE = "devscripts/bash-completion.in" | ||||
|  | ||||
|  | ||||
| @@ -26,5 +26,5 @@ def build_completion(opt_parser): | ||||
|         f.write(filled_template) | ||||
|  | ||||
|  | ||||
| parser = youtube_dl.parseOpts()[0] | ||||
| parser = youtube_dlc.parseOpts()[0] | ||||
| build_completion(parser) | ||||
|   | ||||
| @@ -12,7 +12,7 @@ import traceback | ||||
| import os.path | ||||
|  | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname((os.path.abspath(__file__))))) | ||||
| from youtube_dl.compat import ( | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_input, | ||||
|     compat_http_server, | ||||
|     compat_str, | ||||
| @@ -325,7 +325,7 @@ class YoutubeDLBuilder(object): | ||||
|     authorizedUsers = ['fraca7', 'phihag', 'rg3', 'FiloSottile', 'ytdl-org'] | ||||
|  | ||||
|     def __init__(self, **kwargs): | ||||
|         if self.repoName != 'youtube-dl': | ||||
|         if self.repoName != 'youtube-dlc': | ||||
|             raise BuildError('Invalid repository "%s"' % self.repoName) | ||||
|         if self.user not in self.authorizedUsers: | ||||
|             raise HTTPError('Unauthorized user "%s"' % self.user, 401) | ||||
|   | ||||
| @@ -15,8 +15,8 @@ import sys | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from test.helper import gettestcases | ||||
| from youtube_dl.utils import compat_urllib_parse_urlparse | ||||
| from youtube_dl.utils import compat_urllib_request | ||||
| from youtube_dlc.utils import compat_urllib_parse_urlparse | ||||
| from youtube_dlc.utils import compat_urllib_request | ||||
|  | ||||
| if len(sys.argv) > 1: | ||||
|     METHOD = 'LIST' | ||||
|   | ||||
| @@ -12,13 +12,13 @@ import sys | ||||
|  | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.compat import ( | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_basestring, | ||||
|     compat_getpass, | ||||
|     compat_print, | ||||
|     compat_urllib_request, | ||||
| ) | ||||
| from youtube_dl.utils import ( | ||||
| from youtube_dlc.utils import ( | ||||
|     make_HTTPS_handler, | ||||
|     sanitized_Request, | ||||
| ) | ||||
| @@ -98,7 +98,7 @@ def main(): | ||||
|     releaser = GitHubReleaser() | ||||
|  | ||||
|     new_release = releaser.create_release( | ||||
|         version, name='youtube-dl %s' % version, body=body) | ||||
|         version, name='youtube-dlc %s' % version, body=body) | ||||
|     release_id = new_release['id'] | ||||
|  | ||||
|     for asset in os.listdir(build_path): | ||||
|   | ||||
| @@ -2,4 +2,4 @@ | ||||
| {{commands}} | ||||
|  | ||||
|  | ||||
| complete --command youtube-dl --arguments ":ytfavorites :ytrecommended :ytsubscriptions :ytwatchlater :ythistory" | ||||
| complete --command youtube-dlc --arguments ":ytfavorites :ytrecommended :ytsubscriptions :ytwatchlater :ythistory" | ||||
|   | ||||
| @@ -7,10 +7,10 @@ from os.path import dirname as dirn | ||||
| import sys | ||||
|  | ||||
| sys.path.insert(0, dirn(dirn((os.path.abspath(__file__))))) | ||||
| import youtube_dl | ||||
| from youtube_dl.utils import shell_quote | ||||
| import youtube_dlc | ||||
| from youtube_dlc.utils import shell_quote | ||||
|  | ||||
| FISH_COMPLETION_FILE = 'youtube-dl.fish' | ||||
| FISH_COMPLETION_FILE = 'youtube-dlc.fish' | ||||
| FISH_COMPLETION_TEMPLATE = 'devscripts/fish-completion.in' | ||||
|  | ||||
| EXTRA_ARGS = { | ||||
| @@ -30,7 +30,7 @@ def build_completion(opt_parser): | ||||
|     for group in opt_parser.option_groups: | ||||
|         for option in group.option_list: | ||||
|             long_option = option.get_opt_string().strip('-') | ||||
|             complete_cmd = ['complete', '--command', 'youtube-dl', '--long-option', long_option] | ||||
|             complete_cmd = ['complete', '--command', 'youtube-dlc', '--long-option', long_option] | ||||
|             if option._short_opts: | ||||
|                 complete_cmd += ['--short-option', option._short_opts[0].strip('-')] | ||||
|             if option.help != optparse.SUPPRESS_HELP: | ||||
| @@ -45,5 +45,5 @@ def build_completion(opt_parser): | ||||
|         f.write(filled_template) | ||||
|  | ||||
|  | ||||
| parser = youtube_dl.parseOpts()[0] | ||||
| parser = youtube_dlc.parseOpts()[0] | ||||
| build_completion(parser) | ||||
|   | ||||
| @@ -7,8 +7,8 @@ import os | ||||
| import sys | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.utils import intlist_to_bytes | ||||
| from youtube_dl.aes import aes_encrypt, key_expansion | ||||
| from youtube_dlc.utils import intlist_to_bytes | ||||
| from youtube_dlc.aes import aes_encrypt, key_expansion | ||||
|  | ||||
| secret_msg = b'Secret message goes here' | ||||
|  | ||||
|   | ||||
| @@ -22,9 +22,9 @@ if 'signature' in versions_info: | ||||
| new_version = {} | ||||
|  | ||||
| filenames = { | ||||
|     'bin': 'youtube-dl', | ||||
|     'exe': 'youtube-dl.exe', | ||||
|     'tar': 'youtube-dl-%s.tar.gz' % version} | ||||
|     'bin': 'youtube-dlc', | ||||
|     'exe': 'youtube-dlc.exe', | ||||
|     'tar': 'youtube-dlc-%s.tar.gz' % version} | ||||
| build_dir = os.path.join('..', '..', 'build', version) | ||||
| for key, filename in filenames.items(): | ||||
|     url = 'https://yt-dl.org/downloads/%s/%s' % (version, filename) | ||||
|   | ||||
| @@ -11,24 +11,24 @@ atom_template = textwrap.dedent("""\ | ||||
|     <?xml version="1.0" encoding="utf-8"?> | ||||
|     <feed xmlns="http://www.w3.org/2005/Atom"> | ||||
|         <link rel="self" href="http://ytdl-org.github.io/youtube-dl/update/releases.atom" /> | ||||
|         <title>youtube-dl releases</title> | ||||
|         <id>https://yt-dl.org/feed/youtube-dl-updates-feed</id> | ||||
|         <title>youtube-dlc releases</title> | ||||
|         <id>https://yt-dl.org/feed/youtube-dlc-updates-feed</id> | ||||
|         <updated>@TIMESTAMP@</updated> | ||||
|         @ENTRIES@ | ||||
|     </feed>""") | ||||
|  | ||||
| entry_template = textwrap.dedent(""" | ||||
|     <entry> | ||||
|         <id>https://yt-dl.org/feed/youtube-dl-updates-feed/youtube-dl-@VERSION@</id> | ||||
|         <id>https://yt-dl.org/feed/youtube-dlc-updates-feed/youtube-dlc-@VERSION@</id> | ||||
|         <title>New version @VERSION@</title> | ||||
|         <link href="http://ytdl-org.github.io/youtube-dl" /> | ||||
|         <link href="http://ytdl-org.github.io/youtube-dlc" /> | ||||
|         <content type="xhtml"> | ||||
|             <div xmlns="http://www.w3.org/1999/xhtml"> | ||||
|                 Downloads available at <a href="https://yt-dl.org/downloads/@VERSION@/">https://yt-dl.org/downloads/@VERSION@/</a> | ||||
|             </div> | ||||
|         </content> | ||||
|         <author> | ||||
|             <name>The youtube-dl maintainers</name> | ||||
|             <name>The youtube-dlc maintainers</name> | ||||
|         </author> | ||||
|         <updated>@TIMESTAMP@</updated> | ||||
|     </entry> | ||||
|   | ||||
| @@ -5,10 +5,10 @@ import sys | ||||
| import os | ||||
| import textwrap | ||||
|  | ||||
| # We must be able to import youtube_dl | ||||
| # We must be able to import youtube_dlc | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))) | ||||
|  | ||||
| import youtube_dl | ||||
| import youtube_dlc | ||||
|  | ||||
|  | ||||
| def main(): | ||||
| @@ -16,7 +16,7 @@ def main(): | ||||
|         template = tmplf.read() | ||||
|  | ||||
|     ie_htmls = [] | ||||
|     for ie in youtube_dl.list_extractors(age_limit=None): | ||||
|     for ie in youtube_dlc.list_extractors(age_limit=None): | ||||
|         ie_html = '<b>{}</b>'.format(ie.IE_NAME) | ||||
|         ie_desc = getattr(ie, 'IE_DESC', None) | ||||
|         if ie_desc is False: | ||||
|   | ||||
| @@ -20,7 +20,7 @@ def main(): | ||||
|     bug_text = re.search( | ||||
|         r'(?s)#\s*BUGS\s*[^\n]*\s*(.*?)#\s*COPYRIGHT', readme).group(1) | ||||
|     dev_text = re.search( | ||||
|         r'(?s)(#\s*DEVELOPER INSTRUCTIONS.*?)#\s*EMBEDDING YOUTUBE-DL', | ||||
|         r'(?s)(#\s*DEVELOPER INSTRUCTIONS.*?)#\s*EMBEDDING youtube-dlc', | ||||
|         readme).group(1) | ||||
|  | ||||
|     out = bug_text + dev_text | ||||
|   | ||||
| @@ -16,9 +16,9 @@ def main(): | ||||
|     with io.open(infile, encoding='utf-8') as inf: | ||||
|         issue_template_tmpl = inf.read() | ||||
|  | ||||
|     # Get the version from youtube_dl/version.py without importing the package | ||||
|     exec(compile(open('youtube_dl/version.py').read(), | ||||
|                  'youtube_dl/version.py', 'exec')) | ||||
|     # Get the version from youtube_dlc/version.py without importing the package | ||||
|     exec(compile(open('youtube_dlc/version.py').read(), | ||||
|                  'youtube_dlc/version.py', 'exec')) | ||||
|  | ||||
|     out = issue_template_tmpl % {'version': locals()['__version__']} | ||||
|  | ||||
|   | ||||
| @@ -14,8 +14,8 @@ lazy_extractors_filename = sys.argv[1] | ||||
| if os.path.exists(lazy_extractors_filename): | ||||
|     os.remove(lazy_extractors_filename) | ||||
|  | ||||
| from youtube_dl.extractor import _ALL_CLASSES | ||||
| from youtube_dl.extractor.common import InfoExtractor, SearchInfoExtractor | ||||
| from youtube_dlc.extractor import _ALL_CLASSES | ||||
| from youtube_dlc.extractor.common import InfoExtractor, SearchInfoExtractor | ||||
|  | ||||
| with open('devscripts/lazy_load_template.py', 'rt') as f: | ||||
|     module_template = f.read() | ||||
|   | ||||
| @@ -7,10 +7,10 @@ import os | ||||
| import sys | ||||
|  | ||||
|  | ||||
| # Import youtube_dl | ||||
| # Import youtube_dlc | ||||
| ROOT_DIR = os.path.join(os.path.dirname(__file__), '..') | ||||
| sys.path.insert(0, ROOT_DIR) | ||||
| import youtube_dl | ||||
| import youtube_dlc | ||||
|  | ||||
|  | ||||
| def main(): | ||||
| @@ -33,7 +33,7 @@ def main(): | ||||
|                 ie_md += ' (Currently broken)' | ||||
|             yield ie_md | ||||
|  | ||||
|     ies = sorted(youtube_dl.gen_extractors(), key=lambda i: i.IE_NAME.lower()) | ||||
|     ies = sorted(youtube_dlc.gen_extractors(), key=lambda i: i.IE_NAME.lower()) | ||||
|     out = '# Supported sites\n' + ''.join( | ||||
|         ' - ' + md + '\n' | ||||
|         for md in gen_ies_md(ies)) | ||||
|   | ||||
| @@ -8,7 +8,7 @@ import re | ||||
| ROOT_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) | ||||
| README_FILE = os.path.join(ROOT_DIR, 'README.md') | ||||
|  | ||||
| PREFIX = r'''%YOUTUBE-DL(1) | ||||
| PREFIX = r'''%youtube-dlc(1) | ||||
|  | ||||
| # NAME | ||||
|  | ||||
| @@ -16,7 +16,7 @@ youtube\-dl \- download videos from youtube.com or other video platforms | ||||
|  | ||||
| # SYNOPSIS | ||||
|  | ||||
| **youtube-dl** \[OPTIONS\] URL [URL...] | ||||
| **youtube-dlc** \[OPTIONS\] URL [URL...] | ||||
|  | ||||
| ''' | ||||
|  | ||||
| @@ -33,7 +33,7 @@ def main(): | ||||
|         readme = f.read() | ||||
|  | ||||
|     readme = re.sub(r'(?s)^.*?(?=# DESCRIPTION)', '', readme) | ||||
|     readme = re.sub(r'\s+youtube-dl \[OPTIONS\] URL \[URL\.\.\.\]', '', readme) | ||||
|     readme = re.sub(r'\s+youtube-dlc \[OPTIONS\] URL \[URL\.\.\.\]', '', readme) | ||||
|     readme = PREFIX + readme | ||||
|  | ||||
|     readme = filter_options(readme) | ||||
|   | ||||
| @@ -53,8 +53,8 @@ fi | ||||
|  | ||||
| if [ ! -z "`git tag | grep "$version"`" ]; then echo 'ERROR: version already present'; exit 1; fi | ||||
| if [ ! -z "`git status --porcelain | grep -v CHANGELOG`" ]; then echo 'ERROR: the working directory is not clean; commit or stash changes'; exit 1; fi | ||||
| useless_files=$(find youtube_dl -type f -not -name '*.py') | ||||
| if [ ! -z "$useless_files" ]; then echo "ERROR: Non-.py files in youtube_dl: $useless_files"; exit 1; fi | ||||
| useless_files=$(find youtube_dlc -type f -not -name '*.py') | ||||
| if [ ! -z "$useless_files" ]; then echo "ERROR: Non-.py files in youtube_dlc: $useless_files"; exit 1; fi | ||||
| if [ ! -f "updates_key.pem" ]; then echo 'ERROR: updates_key.pem missing'; exit 1; fi | ||||
| if ! type pandoc >/dev/null 2>/dev/null; then echo 'ERROR: pandoc is missing'; exit 1; fi | ||||
| if ! python3 -c 'import rsa' 2>/dev/null; then echo 'ERROR: python3-rsa is missing'; exit 1; fi | ||||
| @@ -68,18 +68,18 @@ make clean | ||||
| if $skip_tests ; then | ||||
|     echo 'SKIPPING TESTS' | ||||
| else | ||||
|     nosetests --verbose --with-coverage --cover-package=youtube_dl --cover-html test --stop || exit 1 | ||||
|     nosetests --verbose --with-coverage --cover-package=youtube_dlc --cover-html test --stop || exit 1 | ||||
| fi | ||||
|  | ||||
| /bin/echo -e "\n### Changing version in version.py..." | ||||
| sed -i "s/__version__ = '.*'/__version__ = '$version'/" youtube_dl/version.py | ||||
| sed -i "s/__version__ = '.*'/__version__ = '$version'/" youtube_dlc/version.py | ||||
|  | ||||
| /bin/echo -e "\n### Changing version in ChangeLog..." | ||||
| sed -i "s/<unreleased>/$version/" ChangeLog | ||||
|  | ||||
| /bin/echo -e "\n### Committing documentation, templates and youtube_dl/version.py..." | ||||
| /bin/echo -e "\n### Committing documentation, templates and youtube_dlc/version.py..." | ||||
| make README.md CONTRIBUTING.md issuetemplates supportedsites | ||||
| git add README.md CONTRIBUTING.md .github/ISSUE_TEMPLATE/1_broken_site.md .github/ISSUE_TEMPLATE/2_site_support_request.md .github/ISSUE_TEMPLATE/3_site_feature_request.md .github/ISSUE_TEMPLATE/4_bug_report.md .github/ISSUE_TEMPLATE/5_feature_request.md .github/ISSUE_TEMPLATE/6_question.md docs/supportedsites.md youtube_dl/version.py ChangeLog | ||||
| git add README.md CONTRIBUTING.md .github/ISSUE_TEMPLATE/1_broken_site.md .github/ISSUE_TEMPLATE/2_site_support_request.md .github/ISSUE_TEMPLATE/3_site_feature_request.md .github/ISSUE_TEMPLATE/4_bug_report.md .github/ISSUE_TEMPLATE/5_feature_request.md .github/ISSUE_TEMPLATE/6_question.md docs/supportedsites.md youtube_dlc/version.py ChangeLog | ||||
| git commit $gpg_sign_commits -m "release $version" | ||||
|  | ||||
| /bin/echo -e "\n### Now tagging, signing and pushing..." | ||||
| @@ -94,13 +94,13 @@ git push origin "$version" | ||||
|  | ||||
| /bin/echo -e "\n### OK, now it is time to build the binaries..." | ||||
| REV=$(git rev-parse HEAD) | ||||
| make youtube-dl youtube-dl.tar.gz | ||||
| make youtube-dlc youtube-dlc.tar.gz | ||||
| read -p "VM running? (y/n) " -n 1 | ||||
| wget "http://$buildserver/build/ytdl-org/youtube-dl/youtube-dl.exe?rev=$REV" -O youtube-dl.exe | ||||
| wget "http://$buildserver/build/ytdl-org/youtube-dl/youtube-dlc.exe?rev=$REV" -O youtube-dlc.exe | ||||
| mkdir -p "build/$version" | ||||
| mv youtube-dl youtube-dl.exe "build/$version" | ||||
| mv youtube-dl.tar.gz "build/$version/youtube-dl-$version.tar.gz" | ||||
| RELEASE_FILES="youtube-dl youtube-dl.exe youtube-dl-$version.tar.gz" | ||||
| mv youtube-dlc youtube-dlc.exe "build/$version" | ||||
| mv youtube-dlc.tar.gz "build/$version/youtube-dlc-$version.tar.gz" | ||||
| RELEASE_FILES="youtube-dlc youtube-dlc.exe youtube-dlc-$version.tar.gz" | ||||
| (cd build/$version/ && md5sum $RELEASE_FILES > MD5SUMS) | ||||
| (cd build/$version/ && sha1sum $RELEASE_FILES > SHA1SUMS) | ||||
| (cd build/$version/ && sha256sum $RELEASE_FILES > SHA2-256SUMS) | ||||
|   | ||||
| @@ -9,11 +9,11 @@ import sys | ||||
|  | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.compat import ( | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_print, | ||||
|     compat_urllib_request, | ||||
| ) | ||||
| from youtube_dl.utils import format_bytes | ||||
| from youtube_dlc.utils import format_bytes | ||||
|  | ||||
|  | ||||
| def format_size(bytes): | ||||
| @@ -36,9 +36,9 @@ for page in itertools.count(1): | ||||
|             asset_name = asset['name'] | ||||
|             total_bytes += asset['download_count'] * asset['size'] | ||||
|             if all(not re.match(p, asset_name) for p in ( | ||||
|                     r'^youtube-dl$', | ||||
|                     r'^youtube-dl-\d{4}\.\d{2}\.\d{2}(?:\.\d+)?\.tar\.gz$', | ||||
|                     r'^youtube-dl\.exe$')): | ||||
|                     r'^youtube-dlc$', | ||||
|                     r'^youtube-dlc-\d{4}\.\d{2}\.\d{2}(?:\.\d+)?\.tar\.gz$', | ||||
|                     r'^youtube-dlc\.exe$')): | ||||
|                 continue | ||||
|             compat_print( | ||||
|                 ' %s size: %s downloads: %d' | ||||
|   | ||||
| @@ -1,6 +1,6 @@ | ||||
| #compdef youtube-dl | ||||
| #compdef youtube-dlc | ||||
|  | ||||
| __youtube_dl() { | ||||
| __youtube_dlc() { | ||||
|     local curcontext="$curcontext" fileopts diropts cur prev | ||||
|     typeset -A opt_args | ||||
|     fileopts="{{fileopts}}" | ||||
| @@ -25,4 +25,4 @@ __youtube_dl() { | ||||
|     esac | ||||
| } | ||||
|  | ||||
| __youtube_dl | ||||
| __youtube_dlc | ||||
| @@ -6,9 +6,9 @@ from os.path import dirname as dirn | ||||
| import sys | ||||
|  | ||||
| sys.path.insert(0, dirn(dirn((os.path.abspath(__file__))))) | ||||
| import youtube_dl | ||||
| import youtube_dlc | ||||
|  | ||||
| ZSH_COMPLETION_FILE = "youtube-dl.zsh" | ||||
| ZSH_COMPLETION_FILE = "youtube-dlc.zsh" | ||||
| ZSH_COMPLETION_TEMPLATE = "devscripts/zsh-completion.in" | ||||
|  | ||||
|  | ||||
| @@ -45,5 +45,5 @@ def build_completion(opt_parser): | ||||
|         f.write(template) | ||||
|  | ||||
|  | ||||
| parser = youtube_dl.parseOpts()[0] | ||||
| parser = youtube_dlc.parseOpts()[0] | ||||
| build_completion(parser) | ||||
|   | ||||
| @@ -85,17 +85,17 @@ qthelp: | ||||
| 	@echo | ||||
| 	@echo "Build finished; now you can run "qcollectiongenerator" with the" \ | ||||
| 	      ".qhcp project file in $(BUILDDIR)/qthelp, like this:" | ||||
| 	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/youtube-dl.qhcp" | ||||
| 	@echo "# qcollectiongenerator $(BUILDDIR)/qthelp/youtube-dlc.qhcp" | ||||
| 	@echo "To view the help file:" | ||||
| 	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/youtube-dl.qhc" | ||||
| 	@echo "# assistant -collectionFile $(BUILDDIR)/qthelp/youtube-dlc.qhc" | ||||
|  | ||||
| devhelp: | ||||
| 	$(SPHINXBUILD) -b devhelp $(ALLSPHINXOPTS) $(BUILDDIR)/devhelp | ||||
| 	@echo | ||||
| 	@echo "Build finished." | ||||
| 	@echo "To view the help file:" | ||||
| 	@echo "# mkdir -p $$HOME/.local/share/devhelp/youtube-dl" | ||||
| 	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/youtube-dl" | ||||
| 	@echo "# mkdir -p $$HOME/.local/share/devhelp/youtube-dlc" | ||||
| 	@echo "# ln -s $(BUILDDIR)/devhelp $$HOME/.local/share/devhelp/youtube-dlc" | ||||
| 	@echo "# devhelp" | ||||
|  | ||||
| epub: | ||||
|   | ||||
							
								
								
									
										10
									
								
								docs/conf.py
									
									
									
									
									
								
							
							
						
						
									
										10
									
								
								docs/conf.py
									
									
									
									
									
								
							| @@ -1,6 +1,6 @@ | ||||
| # coding: utf-8 | ||||
| # | ||||
| # youtube-dl documentation build configuration file, created by | ||||
| # youtube-dlc documentation build configuration file, created by | ||||
| # sphinx-quickstart on Fri Mar 14 21:05:43 2014. | ||||
| # | ||||
| # This file is execfile()d with the current directory set to its | ||||
| @@ -14,7 +14,7 @@ | ||||
|  | ||||
| import sys | ||||
| import os | ||||
| # Allows to import youtube_dl | ||||
| # Allows to import youtube_dlc | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| # -- General configuration ------------------------------------------------ | ||||
| @@ -36,7 +36,7 @@ source_suffix = '.rst' | ||||
| master_doc = 'index' | ||||
|  | ||||
| # General information about the project. | ||||
| project = u'youtube-dl' | ||||
| project = u'youtube-dlc' | ||||
| copyright = u'2014, Ricardo Garcia Gonzalez' | ||||
|  | ||||
| # The version info for the project you're documenting, acts as replacement for | ||||
| @@ -44,7 +44,7 @@ copyright = u'2014, Ricardo Garcia Gonzalez' | ||||
| # built documents. | ||||
| # | ||||
| # The short X.Y version. | ||||
| from youtube_dl.version import __version__ | ||||
| from youtube_dlc.version import __version__ | ||||
| version = __version__ | ||||
| # The full version, including alpha/beta/rc tags. | ||||
| release = version | ||||
| @@ -68,4 +68,4 @@ html_theme = 'default' | ||||
| html_static_path = ['_static'] | ||||
|  | ||||
| # Output file base name for HTML help builder. | ||||
| htmlhelp_basename = 'youtube-dldoc' | ||||
| htmlhelp_basename = 'youtube-dlcdoc' | ||||
|   | ||||
| @@ -1,13 +1,13 @@ | ||||
| Welcome to youtube-dl's documentation! | ||||
| Welcome to youtube-dlc's documentation! | ||||
| ====================================== | ||||
|  | ||||
| *youtube-dl* is a command-line program to download videos from YouTube.com and more sites. | ||||
| *youtube-dlc* is a command-line program to download videos from YouTube.com and more sites. | ||||
| It can also be used in Python code. | ||||
|  | ||||
| Developer guide | ||||
| --------------- | ||||
|  | ||||
| This section contains information for using *youtube-dl* from Python programs. | ||||
| This section contains information for using *youtube-dlc* from Python programs. | ||||
|  | ||||
| .. toctree:: | ||||
|     :maxdepth: 2 | ||||
|   | ||||
| @@ -1,11 +1,11 @@ | ||||
| Using the ``youtube_dl`` module | ||||
| Using the ``youtube_dlc`` module | ||||
| =============================== | ||||
|  | ||||
| When using the ``youtube_dl`` module, you start by creating an instance of :class:`YoutubeDL` and adding all the available extractors: | ||||
| When using the ``youtube_dlc`` module, you start by creating an instance of :class:`YoutubeDL` and adding all the available extractors: | ||||
|  | ||||
| .. code-block:: python | ||||
|  | ||||
|     >>> from youtube_dl import YoutubeDL | ||||
|     >>> from youtube_dlc import YoutubeDL | ||||
|     >>> ydl = YoutubeDL() | ||||
|     >>> ydl.add_default_info_extractors() | ||||
|  | ||||
| @@ -22,7 +22,7 @@ You use the :meth:`YoutubeDL.extract_info` method for getting the video informat | ||||
|     [youtube] BaW_jenozKc: Downloading video info webpage | ||||
|     [youtube] BaW_jenozKc: Extracting video information | ||||
|     >>> info['title'] | ||||
|     'youtube-dl test video "\'/\\ä↭𝕐' | ||||
|     'youtube-dlc test video "\'/\\ä↭𝕐' | ||||
|     >>> info['height'], info['width'] | ||||
|     (720, 1280) | ||||
|  | ||||
|   | ||||
| @@ -1 +1 @@ | ||||
| pyinstaller.exe youtube_dl\__main__.py --onefile --name youtube-dlc | ||||
| pyinstaller.exe youtube_dlc\__main__.py --onefile --name youtube-dlc | ||||
| @@ -2,5 +2,5 @@ | ||||
| universal = True | ||||
|  | ||||
| [flake8] | ||||
| exclude = youtube_dl/extractor/__init__.py,devscripts/buildserver.py,devscripts/lazy_load_template.py,devscripts/make_issue_template.py,setup.py,build,.git,venv | ||||
| exclude = youtube_dlc/extractor/__init__.py,devscripts/buildserver.py,devscripts/lazy_load_template.py,devscripts/make_issue_template.py,setup.py,build,.git,venv | ||||
| ignore = E402,E501,E731,E741,W503 | ||||
|   | ||||
							
								
								
									
										24
									
								
								setup.py
									
									
									
									
									
								
							
							
						
						
									
										24
									
								
								setup.py
									
									
									
									
									
								
							| @@ -7,9 +7,9 @@ import warnings | ||||
| import sys | ||||
| from distutils.spawn import spawn | ||||
|  | ||||
| # Get the version from youtube_dl/version.py without importing the package | ||||
| exec(compile(open('youtube_dl/version.py').read(), | ||||
|              'youtube_dl/version.py', 'exec')) | ||||
| # Get the version from youtube_dlc/version.py without importing the package | ||||
| exec(compile(open('youtube_dlc/version.py').read(), | ||||
|              'youtube_dlc/version.py', 'exec')) | ||||
|  | ||||
| DESCRIPTION = 'Media downloader supporting various sites such as youtube' | ||||
| LONG_DESCRIPTION = 'Command-line program to download videos from YouTube.com and other video sites. Based on a more active community fork.' | ||||
| @@ -18,10 +18,10 @@ if len(sys.argv) >= 2 and sys.argv[1] == 'py2exe': | ||||
|     print("inv") | ||||
| else: | ||||
|     files_spec = [ | ||||
|         ('etc/bash_completion.d', ['youtube-dl.bash-completion']), | ||||
|         ('etc/fish/completions', ['youtube-dl.fish']), | ||||
|         ('share/doc/youtube_dl', ['README.txt']), | ||||
|         ('share/man/man1', ['youtube-dl.1']) | ||||
|         ('etc/bash_completion.d', ['youtube-dlc.bash-completion']), | ||||
|         ('etc/fish/completions', ['youtube-dlc.fish']), | ||||
|         ('share/doc/youtube_dlc', ['README.txt']), | ||||
|         ('share/man/man1', ['youtube-dlc.1']) | ||||
|     ] | ||||
|     root = os.path.dirname(os.path.abspath(__file__)) | ||||
|     data_files = [] | ||||
| @@ -38,7 +38,7 @@ else: | ||||
|         'data_files': data_files, | ||||
|     } | ||||
|     #if setuptools_available: | ||||
|     params['entry_points'] = {'console_scripts': ['youtube-dlc = youtube_dl:main']} | ||||
|     params['entry_points'] = {'console_scripts': ['youtube-dlc = youtube_dlc:main']} | ||||
|     #else: | ||||
|     #    params['scripts'] = ['bin/youtube-dlc'] | ||||
|  | ||||
| @@ -54,7 +54,7 @@ class build_lazy_extractors(Command): | ||||
|  | ||||
|     def run(self): | ||||
|         spawn( | ||||
|             [sys.executable, 'devscripts/make_lazy_extractors.py', 'youtube_dl/extractor/lazy_extractors.py'], | ||||
|             [sys.executable, 'devscripts/make_lazy_extractors.py', 'youtube_dlc/extractor/lazy_extractors.py'], | ||||
|             dry_run=self.dry_run, | ||||
|         ) | ||||
|  | ||||
| @@ -69,9 +69,9 @@ setup( | ||||
|     url="https://github.com/blackjack4494/youtube-dlc", | ||||
|     # packages=setuptools.find_packages(), | ||||
| 	packages=[ | ||||
|         'youtube_dl', | ||||
|         'youtube_dl.extractor', 'youtube_dl.downloader', | ||||
|         'youtube_dl.postprocessor'], | ||||
|         'youtube_dlc', | ||||
|         'youtube_dlc.extractor', 'youtube_dlc.downloader', | ||||
|         'youtube_dlc.postprocessor'], | ||||
|     classifiers=[ | ||||
| 	    "Topic :: Multimedia :: Video", | ||||
|         "Development Status :: 5 - Production/Stable", | ||||
|   | ||||
| @@ -10,13 +10,13 @@ import types | ||||
| import ssl | ||||
| import sys | ||||
|  | ||||
| import youtube_dl.extractor | ||||
| from youtube_dl import YoutubeDL | ||||
| from youtube_dl.compat import ( | ||||
| import youtube_dlc.extractor | ||||
| from youtube_dlc import YoutubeDL | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_os_name, | ||||
|     compat_str, | ||||
| ) | ||||
| from youtube_dl.utils import ( | ||||
| from youtube_dlc.utils import ( | ||||
|     preferredencoding, | ||||
|     write_string, | ||||
| ) | ||||
| @@ -90,7 +90,7 @@ class FakeYDL(YoutubeDL): | ||||
|  | ||||
|  | ||||
| def gettestcases(include_onlymatching=False): | ||||
|     for ie in youtube_dl.extractor.gen_extractors(): | ||||
|     for ie in youtube_dlc.extractor.gen_extractors(): | ||||
|         for tc in ie.get_testcases(include_onlymatching): | ||||
|             yield tc | ||||
|  | ||||
|   | ||||
| @@ -10,10 +10,10 @@ import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from test.helper import FakeYDL, expect_dict, expect_value, http_server_port | ||||
| from youtube_dl.compat import compat_etree_fromstring, compat_http_server | ||||
| from youtube_dl.extractor.common import InfoExtractor | ||||
| from youtube_dl.extractor import YoutubeIE, get_info_extractor | ||||
| from youtube_dl.utils import encode_data_uri, strip_jsonp, ExtractorError, RegexNotFoundError | ||||
| from youtube_dlc.compat import compat_etree_fromstring, compat_http_server | ||||
| from youtube_dlc.extractor.common import InfoExtractor | ||||
| from youtube_dlc.extractor import YoutubeIE, get_info_extractor | ||||
| from youtube_dlc.utils import encode_data_uri, strip_jsonp, ExtractorError, RegexNotFoundError | ||||
| import threading | ||||
|  | ||||
|  | ||||
|   | ||||
| @@ -12,12 +12,12 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
| import copy | ||||
|  | ||||
| from test.helper import FakeYDL, assertRegexpMatches | ||||
| from youtube_dl import YoutubeDL | ||||
| from youtube_dl.compat import compat_str, compat_urllib_error | ||||
| from youtube_dl.extractor import YoutubeIE | ||||
| from youtube_dl.extractor.common import InfoExtractor | ||||
| from youtube_dl.postprocessor.common import PostProcessor | ||||
| from youtube_dl.utils import ExtractorError, match_filter_func | ||||
| from youtube_dlc import YoutubeDL | ||||
| from youtube_dlc.compat import compat_str, compat_urllib_error | ||||
| from youtube_dlc.extractor import YoutubeIE | ||||
| from youtube_dlc.extractor.common import InfoExtractor | ||||
| from youtube_dlc.postprocessor.common import PostProcessor | ||||
| from youtube_dlc.utils import ExtractorError, match_filter_func | ||||
|  | ||||
| TEST_URL = 'http://localhost/sample.mp4' | ||||
|  | ||||
|   | ||||
| @@ -10,7 +10,7 @@ import tempfile | ||||
| import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.utils import YoutubeDLCookieJar | ||||
| from youtube_dlc.utils import YoutubeDLCookieJar | ||||
|  | ||||
|  | ||||
| class TestYoutubeDLCookieJar(unittest.TestCase): | ||||
|   | ||||
| @@ -8,8 +8,8 @@ import sys | ||||
| import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.aes import aes_decrypt, aes_encrypt, aes_cbc_decrypt, aes_cbc_encrypt, aes_decrypt_text | ||||
| from youtube_dl.utils import bytes_to_intlist, intlist_to_bytes | ||||
| from youtube_dlc.aes import aes_decrypt, aes_encrypt, aes_cbc_decrypt, aes_cbc_encrypt, aes_decrypt_text | ||||
| from youtube_dlc.utils import bytes_to_intlist, intlist_to_bytes | ||||
| import base64 | ||||
|  | ||||
| # the encrypted data can be generate with 'devscripts/generate_aes_testdata.py' | ||||
|   | ||||
| @@ -10,7 +10,7 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
| from test.helper import try_rm | ||||
|  | ||||
|  | ||||
| from youtube_dl import YoutubeDL | ||||
| from youtube_dlc import YoutubeDL | ||||
|  | ||||
|  | ||||
| def _download_restricted(url, filename, age): | ||||
|   | ||||
| @@ -12,7 +12,7 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from test.helper import gettestcases | ||||
|  | ||||
| from youtube_dl.extractor import ( | ||||
| from youtube_dlc.extractor import ( | ||||
|     FacebookIE, | ||||
|     gen_extractors, | ||||
|     YoutubeIE, | ||||
| @@ -70,7 +70,7 @@ class TestAllURLsMatching(unittest.TestCase): | ||||
|  | ||||
|     def test_youtube_search_matching(self): | ||||
|         self.assertMatch('http://www.youtube.com/results?search_query=making+mustard', ['youtube:search_url']) | ||||
|         self.assertMatch('https://www.youtube.com/results?baz=bar&search_query=youtube-dl+test+video&filters=video&lclk=video', ['youtube:search_url']) | ||||
|         self.assertMatch('https://www.youtube.com/results?baz=bar&search_query=youtube-dlc+test+video&filters=video&lclk=video', ['youtube:search_url']) | ||||
|  | ||||
|     def test_youtube_extract(self): | ||||
|         assertExtractId = lambda url, id: self.assertEqual(YoutubeIE.extract_id(url), id) | ||||
|   | ||||
| @@ -13,7 +13,7 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
|  | ||||
| from test.helper import FakeYDL | ||||
| from youtube_dl.cache import Cache | ||||
| from youtube_dlc.cache import Cache | ||||
|  | ||||
|  | ||||
| def _is_empty(d): | ||||
|   | ||||
| @@ -10,7 +10,7 @@ import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
|  | ||||
| from youtube_dl.compat import ( | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_getenv, | ||||
|     compat_setenv, | ||||
|     compat_etree_Element, | ||||
| @@ -28,11 +28,11 @@ from youtube_dl.compat import ( | ||||
| class TestCompat(unittest.TestCase): | ||||
|     def test_compat_getenv(self): | ||||
|         test_str = 'тест' | ||||
|         compat_setenv('YOUTUBE_DL_COMPAT_GETENV', test_str) | ||||
|         self.assertEqual(compat_getenv('YOUTUBE_DL_COMPAT_GETENV'), test_str) | ||||
|         compat_setenv('youtube_dlc_COMPAT_GETENV', test_str) | ||||
|         self.assertEqual(compat_getenv('youtube_dlc_COMPAT_GETENV'), test_str) | ||||
|  | ||||
|     def test_compat_setenv(self): | ||||
|         test_var = 'YOUTUBE_DL_COMPAT_SETENV' | ||||
|         test_var = 'youtube_dlc_COMPAT_SETENV' | ||||
|         test_str = 'тест' | ||||
|         compat_setenv(test_var, test_str) | ||||
|         compat_getenv(test_var) | ||||
| @@ -46,11 +46,11 @@ class TestCompat(unittest.TestCase): | ||||
|         compat_setenv('HOME', old_home or '') | ||||
|  | ||||
|     def test_all_present(self): | ||||
|         import youtube_dl.compat | ||||
|         all_names = youtube_dl.compat.__all__ | ||||
|         import youtube_dlc.compat | ||||
|         all_names = youtube_dlc.compat.__all__ | ||||
|         present_names = set(filter( | ||||
|             lambda c: '_' in c and not c.startswith('_'), | ||||
|             dir(youtube_dl.compat))) - set(['unicode_literals']) | ||||
|             dir(youtube_dlc.compat))) - set(['unicode_literals']) | ||||
|         self.assertEqual(all_names, sorted(present_names)) | ||||
|  | ||||
|     def test_compat_urllib_parse_unquote(self): | ||||
|   | ||||
| @@ -24,24 +24,24 @@ import io | ||||
| import json | ||||
| import socket | ||||
|  | ||||
| import youtube_dl.YoutubeDL | ||||
| from youtube_dl.compat import ( | ||||
| import youtube_dlc.YoutubeDL | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_http_client, | ||||
|     compat_urllib_error, | ||||
|     compat_HTTPError, | ||||
| ) | ||||
| from youtube_dl.utils import ( | ||||
| from youtube_dlc.utils import ( | ||||
|     DownloadError, | ||||
|     ExtractorError, | ||||
|     format_bytes, | ||||
|     UnavailableVideoError, | ||||
| ) | ||||
| from youtube_dl.extractor import get_info_extractor | ||||
| from youtube_dlc.extractor import get_info_extractor | ||||
|  | ||||
| RETRIES = 3 | ||||
|  | ||||
|  | ||||
| class YoutubeDL(youtube_dl.YoutubeDL): | ||||
| class YoutubeDL(youtube_dlc.YoutubeDL): | ||||
|     def __init__(self, *args, **kwargs): | ||||
|         self.to_stderr = self.to_screen | ||||
|         self.processed_info_dicts = [] | ||||
| @@ -92,7 +92,7 @@ class TestDownload(unittest.TestCase): | ||||
| def generator(test_case, tname): | ||||
|  | ||||
|     def test_template(self): | ||||
|         ie = youtube_dl.extractor.get_info_extractor(test_case['name'])() | ||||
|         ie = youtube_dlc.extractor.get_info_extractor(test_case['name'])() | ||||
|         other_ies = [get_info_extractor(ie_key)() for ie_key in test_case.get('add_ie', [])] | ||||
|         is_playlist = any(k.startswith('playlist') for k in test_case) | ||||
|         test_cases = test_case.get( | ||||
|   | ||||
| @@ -10,10 +10,10 @@ import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from test.helper import http_server_port, try_rm | ||||
| from youtube_dl import YoutubeDL | ||||
| from youtube_dl.compat import compat_http_server | ||||
| from youtube_dl.downloader.http import HttpFD | ||||
| from youtube_dl.utils import encodeFilename | ||||
| from youtube_dlc import YoutubeDL | ||||
| from youtube_dlc.compat import compat_http_server | ||||
| from youtube_dlc.downloader.http import HttpFD | ||||
| from youtube_dlc.utils import encodeFilename | ||||
| import threading | ||||
|  | ||||
| TEST_DIR = os.path.dirname(os.path.abspath(__file__)) | ||||
|   | ||||
| @@ -10,7 +10,7 @@ import os | ||||
| import subprocess | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.utils import encodeArgument | ||||
| from youtube_dlc.utils import encodeArgument | ||||
|  | ||||
| rootDir = os.path.dirname(os.path.dirname(os.path.abspath(__file__))) | ||||
|  | ||||
| @@ -23,18 +23,18 @@ except AttributeError: | ||||
|  | ||||
| class TestExecution(unittest.TestCase): | ||||
|     def test_import(self): | ||||
|         subprocess.check_call([sys.executable, '-c', 'import youtube_dl'], cwd=rootDir) | ||||
|         subprocess.check_call([sys.executable, '-c', 'import youtube_dlc'], cwd=rootDir) | ||||
|  | ||||
|     def test_module_exec(self): | ||||
|         if sys.version_info >= (2, 7):  # Python 2.6 doesn't support package execution | ||||
|             subprocess.check_call([sys.executable, '-m', 'youtube_dl', '--version'], cwd=rootDir, stdout=_DEV_NULL) | ||||
|             subprocess.check_call([sys.executable, '-m', 'youtube_dlc', '--version'], cwd=rootDir, stdout=_DEV_NULL) | ||||
|  | ||||
|     def test_main_exec(self): | ||||
|         subprocess.check_call([sys.executable, 'youtube_dl/__main__.py', '--version'], cwd=rootDir, stdout=_DEV_NULL) | ||||
|         subprocess.check_call([sys.executable, 'youtube_dlc/__main__.py', '--version'], cwd=rootDir, stdout=_DEV_NULL) | ||||
|  | ||||
|     def test_cmdline_umlauts(self): | ||||
|         p = subprocess.Popen( | ||||
|             [sys.executable, 'youtube_dl/__main__.py', encodeArgument('ä'), '--version'], | ||||
|             [sys.executable, 'youtube_dlc/__main__.py', encodeArgument('ä'), '--version'], | ||||
|             cwd=rootDir, stdout=_DEV_NULL, stderr=subprocess.PIPE) | ||||
|         _, stderr = p.communicate() | ||||
|         self.assertFalse(stderr) | ||||
|   | ||||
| @@ -9,8 +9,8 @@ import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from test.helper import http_server_port | ||||
| from youtube_dl import YoutubeDL | ||||
| from youtube_dl.compat import compat_http_server, compat_urllib_request | ||||
| from youtube_dlc import YoutubeDL | ||||
| from youtube_dlc.compat import compat_http_server, compat_urllib_request | ||||
| import ssl | ||||
| import threading | ||||
|  | ||||
|   | ||||
| @@ -9,7 +9,7 @@ import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from test.helper import FakeYDL | ||||
| from youtube_dl.extractor import IqiyiIE | ||||
| from youtube_dlc.extractor import IqiyiIE | ||||
|  | ||||
|  | ||||
| class IqiyiIEWithCredentials(IqiyiIE): | ||||
|   | ||||
| @@ -8,7 +8,7 @@ import sys | ||||
| import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.jsinterp import JSInterpreter | ||||
| from youtube_dlc.jsinterp import JSInterpreter | ||||
|  | ||||
|  | ||||
| class TestJSInterpreter(unittest.TestCase): | ||||
|   | ||||
| @@ -7,7 +7,7 @@ import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
|  | ||||
| from youtube_dl.extractor import ( | ||||
| from youtube_dlc.extractor import ( | ||||
|     gen_extractors, | ||||
| ) | ||||
|  | ||||
|   | ||||
| @@ -8,7 +8,7 @@ import sys | ||||
| import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.options import _hide_login_info | ||||
| from youtube_dlc.options import _hide_login_info | ||||
|  | ||||
|  | ||||
| class TestOptions(unittest.TestCase): | ||||
|   | ||||
| @@ -8,7 +8,7 @@ import sys | ||||
| import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from youtube_dl.postprocessor import MetadataFromTitlePP | ||||
| from youtube_dlc.postprocessor import MetadataFromTitlePP | ||||
|  | ||||
|  | ||||
| class TestMetadataFromTitle(unittest.TestCase): | ||||
|   | ||||
| @@ -15,7 +15,7 @@ from test.helper import ( | ||||
|     FakeYDL, | ||||
|     get_params, | ||||
| ) | ||||
| from youtube_dl.compat import ( | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_str, | ||||
|     compat_urllib_request, | ||||
| ) | ||||
|   | ||||
| @@ -10,7 +10,7 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
| from test.helper import FakeYDL, md5 | ||||
|  | ||||
|  | ||||
| from youtube_dl.extractor import ( | ||||
| from youtube_dlc.extractor import ( | ||||
|     YoutubeIE, | ||||
|     DailymotionIE, | ||||
|     TEDIE, | ||||
|   | ||||
| @@ -14,7 +14,7 @@ import json | ||||
| import re | ||||
| import subprocess | ||||
|  | ||||
| from youtube_dl.swfinterp import SWFInterpreter | ||||
| from youtube_dlc.swfinterp import SWFInterpreter | ||||
|  | ||||
|  | ||||
| TEST_DIR = os.path.join( | ||||
|   | ||||
| @@ -10,7 +10,7 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
|  | ||||
| import json | ||||
| from youtube_dl.update import rsa_verify | ||||
| from youtube_dlc.update import rsa_verify | ||||
|  | ||||
|  | ||||
| class TestUpdate(unittest.TestCase): | ||||
|   | ||||
| @@ -15,7 +15,7 @@ import io | ||||
| import json | ||||
| import xml.etree.ElementTree | ||||
|  | ||||
| from youtube_dl.utils import ( | ||||
| from youtube_dlc.utils import ( | ||||
|     age_restricted, | ||||
|     args_to_str, | ||||
|     encode_base_n, | ||||
| @@ -105,7 +105,7 @@ from youtube_dl.utils import ( | ||||
|     cli_bool_option, | ||||
|     parse_codecs, | ||||
| ) | ||||
| from youtube_dl.compat import ( | ||||
| from youtube_dlc.compat import ( | ||||
|     compat_chr, | ||||
|     compat_etree_fromstring, | ||||
|     compat_getenv, | ||||
| @@ -240,12 +240,12 @@ class TestUtil(unittest.TestCase): | ||||
|         def env(var): | ||||
|             return '%{0}%'.format(var) if sys.platform == 'win32' else '${0}'.format(var) | ||||
|  | ||||
|         compat_setenv('YOUTUBE_DL_EXPATH_PATH', 'expanded') | ||||
|         self.assertEqual(expand_path(env('YOUTUBE_DL_EXPATH_PATH')), 'expanded') | ||||
|         compat_setenv('youtube_dlc_EXPATH_PATH', 'expanded') | ||||
|         self.assertEqual(expand_path(env('youtube_dlc_EXPATH_PATH')), 'expanded') | ||||
|         self.assertEqual(expand_path(env('HOME')), compat_getenv('HOME')) | ||||
|         self.assertEqual(expand_path('~'), compat_getenv('HOME')) | ||||
|         self.assertEqual( | ||||
|             expand_path('~/%s' % env('YOUTUBE_DL_EXPATH_PATH')), | ||||
|             expand_path('~/%s' % env('youtube_dlc_EXPATH_PATH')), | ||||
|             '%s/expanded' % compat_getenv('HOME')) | ||||
|  | ||||
|     def test_prepend_extension(self): | ||||
| @@ -1388,8 +1388,8 @@ Line 1 | ||||
|         self.assertEqual(caesar('ebg', 'acegik', -2), 'abc') | ||||
|  | ||||
|     def test_rot47(self): | ||||
|         self.assertEqual(rot47('youtube-dl'), r'J@FEF36\5=') | ||||
|         self.assertEqual(rot47('YOUTUBE-DL'), r'*~&%&qt\s{') | ||||
|         self.assertEqual(rot47('youtube-dlc'), r'J@FEF36\5=') | ||||
|         self.assertEqual(rot47('youtube-dlc'), r'*~&%&qt\s{') | ||||
|  | ||||
|     def test_urshift(self): | ||||
|         self.assertEqual(urshift(3, 1), 1) | ||||
|   | ||||
| @@ -17,7 +17,7 @@ class TestVerboseOutput(unittest.TestCase): | ||||
|     def test_private_info_arg(self): | ||||
|         outp = subprocess.Popen( | ||||
|             [ | ||||
|                 sys.executable, 'youtube_dl/__main__.py', '-v', | ||||
|                 sys.executable, 'youtube_dlc/__main__.py', '-v', | ||||
|                 '--username', 'johnsmith@gmail.com', | ||||
|                 '--password', 'secret', | ||||
|             ], cwd=rootDir, stdout=subprocess.PIPE, stderr=subprocess.PIPE) | ||||
| @@ -30,7 +30,7 @@ class TestVerboseOutput(unittest.TestCase): | ||||
|     def test_private_info_shortarg(self): | ||||
|         outp = subprocess.Popen( | ||||
|             [ | ||||
|                 sys.executable, 'youtube_dl/__main__.py', '-v', | ||||
|                 sys.executable, 'youtube_dlc/__main__.py', '-v', | ||||
|                 '-u', 'johnsmith@gmail.com', | ||||
|                 '-p', 'secret', | ||||
|             ], cwd=rootDir, stdout=subprocess.PIPE, stderr=subprocess.PIPE) | ||||
| @@ -43,7 +43,7 @@ class TestVerboseOutput(unittest.TestCase): | ||||
|     def test_private_info_eq(self): | ||||
|         outp = subprocess.Popen( | ||||
|             [ | ||||
|                 sys.executable, 'youtube_dl/__main__.py', '-v', | ||||
|                 sys.executable, 'youtube_dlc/__main__.py', '-v', | ||||
|                 '--username=johnsmith@gmail.com', | ||||
|                 '--password=secret', | ||||
|             ], cwd=rootDir, stdout=subprocess.PIPE, stderr=subprocess.PIPE) | ||||
| @@ -56,7 +56,7 @@ class TestVerboseOutput(unittest.TestCase): | ||||
|     def test_private_info_shortarg_eq(self): | ||||
|         outp = subprocess.Popen( | ||||
|             [ | ||||
|                 sys.executable, 'youtube_dl/__main__.py', '-v', | ||||
|                 sys.executable, 'youtube_dlc/__main__.py', '-v', | ||||
|                 '-u=johnsmith@gmail.com', | ||||
|                 '-p=secret', | ||||
|             ], cwd=rootDir, stdout=subprocess.PIPE, stderr=subprocess.PIPE) | ||||
|   | ||||
| @@ -15,11 +15,11 @@ import io | ||||
|  | ||||
| import xml.etree.ElementTree | ||||
|  | ||||
| import youtube_dl.YoutubeDL | ||||
| import youtube_dl.extractor | ||||
| import youtube_dlc.YoutubeDL | ||||
| import youtube_dlc.extractor | ||||
|  | ||||
|  | ||||
| class YoutubeDL(youtube_dl.YoutubeDL): | ||||
| class YoutubeDL(youtube_dlc.YoutubeDL): | ||||
|     def __init__(self, *args, **kwargs): | ||||
|         super(YoutubeDL, self).__init__(*args, **kwargs) | ||||
|         self.to_stderr = self.to_screen | ||||
| @@ -45,7 +45,7 @@ class TestAnnotations(unittest.TestCase): | ||||
|  | ||||
|     def test_info_json(self): | ||||
|         expected = list(EXPECTED_ANNOTATIONS)  # Two annotations could have the same text. | ||||
|         ie = youtube_dl.extractor.YoutubeIE() | ||||
|         ie = youtube_dlc.extractor.YoutubeIE() | ||||
|         ydl = YoutubeDL(params) | ||||
|         ydl.add_info_extractor(ie) | ||||
|         ydl.download([TEST_ID]) | ||||
|   | ||||
| @@ -9,7 +9,7 @@ import unittest | ||||
| sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
|  | ||||
| from test.helper import expect_value | ||||
| from youtube_dl.extractor import YoutubeIE | ||||
| from youtube_dlc.extractor import YoutubeIE | ||||
|  | ||||
|  | ||||
| class TestYoutubeChapters(unittest.TestCase): | ||||
|   | ||||
| @@ -10,7 +10,7 @@ sys.path.insert(0, os.path.dirname(os.path.dirname(os.path.abspath(__file__)))) | ||||
| from test.helper import FakeYDL | ||||
|  | ||||
|  | ||||
| from youtube_dl.extractor import ( | ||||
| from youtube_dlc.extractor import ( | ||||
|     YoutubePlaylistIE, | ||||
|     YoutubeIE, | ||||
| ) | ||||
|   | ||||
| @@ -13,8 +13,8 @@ import re | ||||
| import string | ||||
|  | ||||
| from test.helper import FakeYDL | ||||
| from youtube_dl.extractor import YoutubeIE | ||||
| from youtube_dl.compat import compat_str, compat_urlretrieve | ||||
| from youtube_dlc.extractor import YoutubeIE | ||||
| from youtube_dlc.compat import compat_str, compat_urlretrieve | ||||
|  | ||||
| _TESTS = [ | ||||
|     ( | ||||
|   | ||||
							
								
								
									
										2
									
								
								tox.ini
									
									
									
									
									
								
							
							
						
						
									
										2
									
								
								tox.ini
									
									
									
									
									
								
							| @@ -10,5 +10,5 @@ defaultargs = test --exclude test_download.py --exclude test_age_restriction.py | ||||
|     --exclude test_subtitles.py --exclude test_write_annotations.py | ||||
|     --exclude test_youtube_lists.py --exclude test_iqiyi_sdk_interpreter.py | ||||
|     --exclude test_socks.py | ||||
| commands = nosetests --verbose {posargs:{[testenv]defaultargs}}  # --with-coverage --cover-package=youtube_dl --cover-html | ||||
| commands = nosetests --verbose {posargs:{[testenv]defaultargs}}  # --with-coverage --cover-package=youtube_dlc --cover-html | ||||
|                                                # test.test_download:TestDownload.test_NowVideo | ||||
|   | ||||
| @@ -1,4 +1,4 @@ | ||||
| # This allows the youtube-dl command to be installed in ZSH using antigen. | ||||
| # This allows the youtube-dlc command to be installed in ZSH using antigen. | ||||
| # Antigen is a bundle manager. It allows you to enhance the functionality of | ||||
| # your zsh session by installing bundles and themes easily. | ||||
|  | ||||
| @@ -6,11 +6,11 @@ | ||||
| # http://antigen.sharats.me/ | ||||
| # https://github.com/zsh-users/antigen | ||||
|  | ||||
| # Install youtube-dl: | ||||
| # Install youtube-dlc: | ||||
| # antigen bundle ytdl-org/youtube-dl | ||||
| # Bundles installed by antigen are available for use immediately. | ||||
|  | ||||
| # Update youtube-dl (and all other antigen bundles): | ||||
| # Update youtube-dlc (and all other antigen bundles): | ||||
| # antigen update | ||||
|  | ||||
| # The antigen command will download the git repository to a folder and then | ||||
| @@ -18,7 +18,7 @@ | ||||
| # code is documented here: | ||||
| # https://github.com/zsh-users/antigen#notes-on-writing-plugins | ||||
|  | ||||
| # This specific script just aliases youtube-dl to the python script that this | ||||
| # This specific script just aliases youtube-dlc to the python script that this | ||||
| # library provides. This requires updating the PYTHONPATH to ensure that the | ||||
| # full set of code can be located. | ||||
| alias youtube-dl="PYTHONPATH=$(dirname $0) $(dirname $0)/bin/youtube-dl" | ||||
| alias youtube-dlc="PYTHONPATH=$(dirname $0) $(dirname $0)/bin/youtube-dlc" | ||||
|   | ||||
							
								
								
									
										12
									
								
								youtube_dl/YoutubeDL.py → youtube_dlc/YoutubeDL.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										12
									
								
								youtube_dl/YoutubeDL.py → youtube_dlc/YoutubeDL.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							| @@ -228,7 +228,7 @@ class YoutubeDL(object): | ||||
|                        playlist items. | ||||
|     postprocessors:    A list of dictionaries, each with an entry | ||||
|                        * key:  The name of the postprocessor. See | ||||
|                                youtube_dl/postprocessor/__init__.py for a list. | ||||
|                                youtube_dlc/postprocessor/__init__.py for a list. | ||||
|                        as well as any further keyword arguments for the | ||||
|                        postprocessor. | ||||
|     progress_hooks:    A list of functions that get called on download | ||||
| @@ -264,7 +264,7 @@ class YoutubeDL(object): | ||||
|                                            about it, warn otherwise (default) | ||||
|     source_address:    Client-side IP address to bind to. | ||||
|     call_home:         Boolean, true iff we are allowed to contact the | ||||
|                        youtube-dl servers for debugging. | ||||
|                        youtube-dlc servers for debugging. | ||||
|     sleep_interval:    Number of seconds to sleep before each download when | ||||
|                        used alone or a lower bound of a range for randomized | ||||
|                        sleep before each download (minimum possible number | ||||
| @@ -301,7 +301,7 @@ class YoutubeDL(object): | ||||
|                        use downloader suggested by extractor if None. | ||||
| 
 | ||||
|     The following parameters are not used by YoutubeDL itself, they are used by | ||||
|     the downloader (see youtube_dl/downloader/common.py): | ||||
|     the downloader (see youtube_dlc/downloader/common.py): | ||||
|     nopart, updatetime, buffersize, ratelimit, min_filesize, max_filesize, test, | ||||
|     noresizebuffer, retries, continuedl, noprogress, consoletitle, | ||||
|     xattr_set_filesize, external_downloader_args, hls_use_mpegts, | ||||
| @@ -441,7 +441,7 @@ class YoutubeDL(object): | ||||
|             if re.match(r'^-[0-9A-Za-z_-]{10}$', a)] | ||||
|         if idxs: | ||||
|             correct_argv = ( | ||||
|                 ['youtube-dl'] | ||||
|                 ['youtube-dlc'] | ||||
|                 + [a for i, a in enumerate(argv) if i not in idxs] | ||||
|                 + ['--'] + [argv[i] for i in idxs] | ||||
|             ) | ||||
| @@ -2254,7 +2254,7 @@ class YoutubeDL(object): | ||||
|                 self.get_encoding())) | ||||
|         write_string(encoding_str, encoding=None) | ||||
| 
 | ||||
|         self._write_string('[debug] youtube-dl version ' + __version__ + '\n') | ||||
|         self._write_string('[debug] youtube-dlc version ' + __version__ + '\n') | ||||
|         if _LAZY_LOADER: | ||||
|             self._write_string('[debug] Lazy loading extractors enabled' + '\n') | ||||
|         try: | ||||
| @@ -2352,7 +2352,7 @@ class YoutubeDL(object): | ||||
|         file_handler = compat_urllib_request.FileHandler() | ||||
| 
 | ||||
|         def file_open(*args, **kwargs): | ||||
|             raise compat_urllib_error.URLError('file:// scheme is explicitly disabled in youtube-dl for security reasons') | ||||
|             raise compat_urllib_error.URLError('file:// scheme is explicitly disabled in youtube-dlc for security reasons') | ||||
|         file_handler.file_open = file_open | ||||
| 
 | ||||
|         opener = compat_urllib_request.build_opener( | ||||
| @@ -53,7 +53,7 @@ def _real_main(argv=None): | ||||
| 
 | ||||
|     workaround_optparse_bug9161() | ||||
| 
 | ||||
|     setproctitle('youtube-dl') | ||||
|     setproctitle('youtube-dlc') | ||||
| 
 | ||||
|     parser, opts, args = parseOpts(argv) | ||||
| 
 | ||||
| @@ -455,7 +455,7 @@ def _real_main(argv=None): | ||||
|             ydl.warn_if_short_id(sys.argv[1:] if argv is None else argv) | ||||
|             parser.error( | ||||
|                 'You must provide at least one URL.\n' | ||||
|                 'Type youtube-dl --help to see a list of all options.') | ||||
|                 'Type youtube-dlc --help to see a list of all options.') | ||||
| 
 | ||||
|         try: | ||||
|             if opts.load_info_filename is not None: | ||||
							
								
								
									
										8
									
								
								youtube_dl/__main__.py → youtube_dlc/__main__.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							
							
						
						
									
										8
									
								
								youtube_dl/__main__.py → youtube_dlc/__main__.py
									
									
									
									
									
										
										
										Executable file → Normal file
									
								
							| @@ -2,8 +2,8 @@ | ||||
| from __future__ import unicode_literals | ||||
| 
 | ||||
| # Execute with | ||||
| # $ python youtube_dl/__main__.py (2.6+) | ||||
| # $ python -m youtube_dl          (2.7+) | ||||
| # $ python youtube_dlc/__main__.py (2.6+) | ||||
| # $ python -m youtube_dlc          (2.7+) | ||||
| 
 | ||||
| import sys | ||||
| 
 | ||||
| @@ -13,7 +13,7 @@ if __package__ is None and not hasattr(sys, 'frozen'): | ||||
|     path = os.path.realpath(os.path.abspath(__file__)) | ||||
|     sys.path.insert(0, os.path.dirname(os.path.dirname(path))) | ||||
| 
 | ||||
| import youtube_dl | ||||
| import youtube_dlc | ||||
| 
 | ||||
| if __name__ == '__main__': | ||||
|     youtube_dl.main() | ||||
|     youtube_dlc.main() | ||||
| @@ -23,7 +23,7 @@ class Cache(object): | ||||
|         res = self._ydl.params.get('cachedir') | ||||
|         if res is None: | ||||
|             cache_root = compat_getenv('XDG_CACHE_HOME', '~/.cache') | ||||
|             res = os.path.join(cache_root, 'youtube-dl') | ||||
|             res = os.path.join(cache_root, 'youtube-dlc') | ||||
|         return expand_path(res) | ||||
| 
 | ||||
|     def _get_cache_fn(self, section, key, dtype): | ||||
| @@ -2973,7 +2973,7 @@ else: | ||||
| 
 | ||||
| if platform.python_implementation() == 'PyPy' and sys.pypy_version_info < (5, 4, 0): | ||||
|     # PyPy2 prior to version 5.4.0 expects byte strings as Windows function | ||||
|     # names, see the original PyPy issue [1] and the youtube-dl one [2]. | ||||
|     # names, see the original PyPy issue [1] and the youtube-dlc one [2]. | ||||
|     # 1. https://bitbucket.org/pypy/pypy/issues/2360/windows-ctypescdll-typeerror-function-name | ||||
|     # 2. https://github.com/ytdl-org/youtube-dl/pull/4392 | ||||
|     def compat_ctypes_WINFUNCTYPE(*args, **kwargs): | ||||
| @@ -243,7 +243,7 @@ class FileDownloader(object): | ||||
|             else: | ||||
|                 clear_line = ('\r\x1b[K' if sys.stderr.isatty() else '\r') | ||||
|             self.to_screen(clear_line + fullmsg, skip_eol=not is_last_line) | ||||
|         self.to_console_title('youtube-dl ' + msg) | ||||
|         self.to_console_title('youtube-dlc ' + msg) | ||||
| 
 | ||||
|     def report_progress(self, s): | ||||
|         if s['status'] == 'finished': | ||||
| @@ -32,9 +32,9 @@ class FragmentFD(FileDownloader): | ||||
|     keep_fragments:     Keep downloaded fragments on disk after downloading is | ||||
|                         finished | ||||
| 
 | ||||
|     For each incomplete fragment download youtube-dl keeps on disk a special | ||||
|     For each incomplete fragment download youtube-dlc keeps on disk a special | ||||
|     bookkeeping file with download state and metadata (in future such files will | ||||
|     be used for any incomplete download handled by youtube-dl). This file is | ||||
|     be used for any incomplete download handled by youtube-dlc). This file is | ||||
|     used to properly handle resuming, check download file consistency and detect | ||||
|     potential errors. The file has a .ytdl extension and represents a standard | ||||
|     JSON file of the following format: | ||||
Some files were not shown because too many files have changed in this diff Show More
		Reference in New Issue
	
	Block a user
	 Unknown
					Unknown