2.6 KiB
CONFIGURATION
You can configure youtube-dl by placing any supported command line option to a configuration file. On Linux and macOS, the system wide configuration file is located at /etc/youtube-dl.conf
and the user wide configuration file at ~/.config/youtube-dl/config
. On Windows, the user wide configuration file locations are %APPDATA%\youtube-dl\config.txt
or C:\Users\<user name>\youtube-dl.conf
. Note that by default configuration file may not exist so you may need to create it yourself.
For example, with the following configuration file youtube-dl will always extract the audio, not copy the mtime, use a proxy and save all videos under Movies
directory in your home directory:
# Lines starting with # are comments
# Always extract audio
-x
# Do not copy the mtime
--no-mtime
# Use this proxy
--proxy 127.0.0.1:3128
# Save all videos under Movies directory in your home directory
-o ~/Movies/%(title)s.%(ext)s
Note that options in configuration file are just the same options aka switches used in regular command line calls thus there must be no whitespace after -
or --
, e.g. -o
or --proxy
but not - o
or -- proxy
.
You can use --ignore-config
if you want to disable the configuration file for a particular youtube-dl run.
You can also use --config-location
if you want to use custom configuration file for a particular youtube-dl run.
Authentication with .netrc
file
You may also want to configure automatic credentials storage for extractors that support authentication (by providing login and password with --username
and --password
) in order not to pass credentials as command line arguments on every youtube-dl execution and prevent tracking plain text passwords in the shell command history. You can achieve this using a .netrc
file on a per extractor basis. For that you will need to create a .netrc
file in your $HOME
and restrict permissions to read/write by only you:
touch $HOME/.netrc
chmod a-rwx,u+rw $HOME/.netrc
After that you can add credentials for an extractor in the following format, where extractor is the name of the extractor in lowercase:
machine <extractor> login <login> password <password>
For example:
machine youtube login myaccount@gmail.com password my_youtube_password
machine twitch login my_twitch_account_name password my_twitch_password
To activate authentication with the .netrc
file you should pass --netrc
to youtube-dl or place it in the configuration file.
On Windows you may also need to setup the %HOME%
environment variable manually. For example:
set HOME=%USERPROFILE%