Guide
|
di Hunt Team

yt-dlp a ottobre 2026: YouTube, TikTok, X, SoundCloud e gli altri

Lo yt-dlp stabile è 2026.10.26, pubblicato il 26 ottobre 2026. Dalla versione del 29 gennaio a quel tag, quasi tutto il lavoro è stato riparazione. YouTube ha fatto ruotare i client di riproduzione. TikTok ha rotto gli elenchi dei formati, poi i link di condivisione. X ha tolto il login e sistemato i conteggi delle visualizzazioni. SoundCloud ha perso il client id. L'estrattore di Instagram è stato riscritto a luglio. Vimeo ha guadagnato un client macOS a gennaio e l'ha perso, insieme al client iOS, ad agosto.

Le note qui sotto descrivono quello che questi estrattori fanno davvero sul tag stabile attuale. Un media privato, cancellato o con limite di età fallisce ancora, a meno che non passiate i cookie. Diversi siti hanno perso quest'anno il login integrato, già rotto: un vecchio --username non serve più.

SitoCosa si è mosso in yt-dlp nel 2026
YouTubeClient di riproduzione tutto l'anno. SABR ancora in prerelease.
InstagramEstrattore riscritto a luglio. Estrazione autenticata sistemata ad agosto.
TikTokChallenge JS, formati e URL di condivisione (agosto).
VimeoClient macOS aggiunto a gennaio, rimosso con iOS ad agosto.
XLogin rimosso. Visualizzazioni e broadcast sistemati.
FacebookLogin rimosso. Estrattore degli annunci sistemato.
TwitchCanale assente: errore. Clip sistemate a giugno e a ottobre.
RedditEstrazione anonima sistemata a giugno. Login rimosso a luglio.
SoundCloudClient id, impersonificazione del browser, formati originali, commenti.
Kick, Bandcamp, Dailymotion, Patreon, LinkedInEstrattori riparati. Dettaglio più sotto.

YouTube

Questo estrattore si è mosso in quasi ogni tag stabile.

Da gennaio a marzo è stata rotazione dei client di riproduzione.

  • 2026.01.29: client predefiniti ritoccati, challenge n risolte per i formati dei manifest, il solver JS esterno (EJS) portato a 0.4.0, sotto-thread dei commenti, miniature degli Shorts sistemate nell'estrazione piatta delle schede.
  • 2026.01.31: client rotti ios_downgraded e tv_embedded rimossi. web_embedded aggiunto come ripiego per android_vr.
  • 2026.02.04: il JavaScript del player parte in modo predefinito sulla variante tv.
  • 2026.02.21: più varianti JS note del player, formati adattivi live segnati come incompleti, EJS 0.5.0. ytsearchdate, rotto, rimosso.
  • 2026.03.03: player fissato su 9f4cc5e4. La risposta player della pagina web viene saltata di default.
  • 2026.03.13: android_vr e web_embedded sistemati, configurazioni di web_safari e web_creator richieste, EJS 0.7.0.
  • 2026.03.17: EJS 0.8.0, --live-from-start sistemato, l'argomento webpage_client viene sempre rispettato.

Giugno ha cambiato la macchina, non il sito. 2026.06.09 abbandona Node prima della 22, Deno prima di 2.3.0 e Bun fuori da 1.2.11 a 1.3.14. La stessa versione corregge la pulizia dei token PO su Python 3.14.4+ e su Python 3.15. Era un bug di stringa. Il controllo proof-of-origin di YouTube è ancora lì.

Luglio e agosto:

  • 2026.07.04: formati adattivi live, e una serie di correzioni su schede e playlist (metadati, paginazione, collaboratori).
  • 2026.08.19: client visionos aggiunto, ripieghi web_embedded, android_vr tolto dai client predefiniti, channel_follower_count per i collaboratori, generazione dei frammenti live sistemata.

2026.10.21 ha aggiunto un client tv_samsung, l'ha messo tra i predefiniti, invia uno user-agent Safari per web_embedded e sistema l'estrazione dei dati iniziali. Il tag del 26 ottobre non tocca YouTube. Toglie Python 3.10, richiede Windows 10 o successivo per i binari Windows ufficiali e aggiorna brotli e curl-cffi inclusi, dopo i loro avvisi di sicurezza.

SABR è ancora fuori dallo stabile. Il downloader a bitrate adattivo lato server di YouTube vive su una linea di prerelease sabr (una build di fine ottobre 2026 sul fork di bashonly) e non compare nel changelog di 2026.10.26. La guida PO Token del progetto dice che il client web espone oggi formati SABR e vuole un token proof-of-origin prima di servire il media. Lo yt-dlp stabile aggira la cosa interrogando altri client (tv, tv_samsung, web_embedded, visionos) invece di parlare SABR.

Un URL pubblico basta per i client predefiniti. Un video privato, cancellato o con limite di età chiede ancora i cookie, e alcuni video con limite di età tornano solo se l'account può davvero riprodurli.

TikTok

  • 29 gennaio: estratto save_count. I challenge JavaScript si risolvono in Python nativo, quindi TikTok non ha la soglia Deno o Node di YouTube.
  • 13 marzo: risoluzione dei challenge sistemata di nuovo, dopo un'altra rottura.
  • 19 agosto: estrattore e elenco dei formati sistemati, e gli URL di condivisione (i link corti vm.tiktok.com) iniziano a funzionare.

I video pubblici e quei link corti funzionano su 2026.10.26. Un account privato chiede ancora i cookie.

X

Nel changelog l'estrattore si chiama ancora Twitter.

  • 29 gennaio: supporto del login, già rotto, rimosso. I post senza video negli oggetti unified_card non vengono più estratti.
  • 21 febbraio: gestione degli errori sistemata.
  • 9 giugno: view_count sistemato.
  • 19 agosto: eventi di broadcast sistemati.

Un post video o un broadcast è il caso che funziona. Un post di testo senza media è stato abbandonato a gennaio: --dump-json su quell'URL non deve restituire un video.

SoundCloud

  • 21 febbraio: estrazione del client id sistemata, e impersonificazione del browser aggiunta. SoundCloud aveva iniziato a rifiutare la vecchia impronta TLS.
  • 9 giugno: errori più chiari, e --extractor-retries per i formati originali dell'uploader.
  • 4 luglio: uploader_url sulle playlist, commenti e un passaggio più ampio sui metadati.

Se volete il file inviato dall'uploader, e non il transcodificato, è il flag di retry di giugno quello che conta. Commenti e uploader_url compaiono nell'info dict da luglio.

yt-dlp -x --audio-format mp3 "https://soundcloud.com/artist/track"

Instagram

2026.07.04 ha riscritto l'estrattore e gli fa rilevare i cookie invalidati, invece di fallire a metà richiesta. 2026.08.19 ha sistemato l'estrazione autenticata.

I post pubblici funzionano senza sessione. Un account privato chiede ancora i cookie di un browser connesso, e un barattolo di cookie morto fallisce subito, non più a metà strada.

Vimeo

2026.01.29 ha aggiunto un client macos. 2026.08.19 ha rimosso i client ios e macos. Il client aggiunto a gennaio non ha passato l'estate. Gli URL Vimeo pubblici si estraggono ancora. I video privati o protetti da password chiedono la password o i cookie, come prima.

Facebook, Reddit, Twitch

Facebook. Il 29 gennaio è stato rimosso il login rotto. L'estrattore degli annunci è stato sistemato lo stesso giorno e di nuovo il 21 febbraio. Solo video pubblici, a meno che non passiate voi i cookie. Il login integrato è sparito.

Reddit. Il 9 giugno è stata sistemata l'estrazione senza account. Il 4 luglio è stato rimosso il login rotto. I post pubblici tornano a funzionare in anonimo.

Twitch. Il 29 gennaio un canale assente diventa un errore, non un risultato vuoto. Le clip sono state sistemate il 9 giugno e di nuovo il 21 ottobre. I vecchi sottotitoli rechat sono stati rimossi a giugno. VOD e clip pubblici.

Altri siti che si sono mossi

  • Kick: estrattori riscritti il 21 ottobre.
  • Bandcamp: l'estrattore weekly riparato più volte, impersonificazione del browser il 19 agosto, un'altra correzione il 21 ottobre.
  • Dailymotion: correzioni dell'estrattore il 29 gennaio e il 21 febbraio.
  • Patreon: media inline il 29 gennaio, correzione dell'estrattore il 3 marzo, nuovo formato di URL il 4 luglio.
  • LinkedIn: login rotto rimosso il 4 luglio.
  • Bilibili: estrazione API sistemata il 4 luglio.
  • Niconico: rilevamento errori e short il 4 luglio, canali il 21 ottobre.

Cosa chiede 2026.10.26 alla macchina

2026.10.26 richiede Python 3.11. Python 3.10 non c'è più. I binari Windows ufficiali chiedono Windows 10 o successivo.

La versione del 21 ottobre avvisa che vecchi eseguibili possono essere intercettati sull'aggiornamento automatico, dopo l'avviso certifi. Se vi riguarda davvero, installate 2026.10.26 scaricandolo, non con yt-dlp -U.

YouTube vuole ancora un runtime JS aggiornato quando risolvete i challenge in locale: Node 22 o più recente, Deno 2.3.0 o più recente, e Bun solo da 1.2.11 a 1.3.14. Quella soglia è del 9 giugno.

yt-dlp --js-runtimes deno "https://www.youtube.com/watch?v=VIDEO_ID"
yt-dlp -f "bv*[height<=1080]+ba/b" "https://www.youtube.com/watch?v=VIDEO_ID"

Controllate il tag che state davvero lanciando con yt-dlp --version. Tutto ciò che è più vecchio di 2026.10.26 perde almeno il taglio di Python 3.11, e tutto ciò che è più vecchio di 2026.10.21 non ha tv_samsung tra i client YouTube predefiniti.

Sul binario: proxy, FFmpeg.

VIDEO API

Discover why Hunt is the preferred API provider for developers.