Downloading#
Once you’ve defined your subscriptions, it’s time to test your configuration and try your first download. As a web scraping tool, it’s important to minimize the requests sent to external services to avoid triggering throttling or bans. Further, a full download of even one subscription can take significant time. Test each change to your subscriptions carefully and quickly as follows.
Preview#
Preview what ytdl-sub would do for this subscription. Run the ‘sub’
sub-command with CLI options to restrict requests as much
as possible:
Pull metadata and simulate a download without actually downloading any media files using the
--dry-runCLI option.Limit requests by narrowing the run to one subscription by giving a subscription name to the
--matchCLI option.Stop after just a few downloads to further minimize requests and make testing faster using the
max_downloadssetting fromyt-dlp.
Change to the directory containing your ./subscriptions.yaml file and run with those
options:
cd "/config/ytdl-sub-configs/"
ytdl-sub --dry-run --match="NOVA PBS" sub -o '--ytdl_options.max_downloads 3'
Examine the output carefully, investigate anything that doesn’t look right and repeat this step until everything looks right.
Review#
Review the results of real downloads. Run it again without the --dry-run option to
actually download media and place the files in your library:
ytdl-sub --match="NOVA PBS" sub -o '--ytdl_options.max_downloads 3'
Examine the output carefully again. Then examine how the resulting downloads work in
your library. Repeat with a larger value for max_downloads and examine the output
and downloads again.
Next Steps#
Once you’re previewed and reviewed successful downloads of
each of your subscriptions, you’re ready to run a full download of all your
subscriptions. Run the sub-command without the CLI options you used to limit what
ytdl-sub does while testing:
ytdl-sub sub
If you’re ready to let ytdl-sub run unattended, it’s time to automate
downloads.