migrate to yt-dlp from pytube / hacktoberfest #2524
+35
−41
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Title: Migrating to yt-dlp
Shifted YouTube audio provider from pytube to yt-dlp for improved reliability, maintenance, and feature support.
Description: Modified youtube.py and logging.py, changed all uses of pytube to a similar yt-dlp implementation
Related Issue: migrate away from pytube #2417
Fixes #2417 — pytube dependency is no longer maintained and currently causes YouTube downloads/search to fail due to repeated HTTP 400 errors.
Motivation and Context
Pytube is outdated and unreliable, breaking frequently due to YouTube-side changes.
yt-dlp offers a stable and feature-rich alternative, ensuring consistent functionality for SpotDL’s YouTube-based downloads and searches.
This migration:
How Has This Been Tested?
Environment:
Tests performed:
Types of Changes
Checklist