Pakken yt-dlp tilbyr et Python3 CLI verktøy for å laste ned lyd og videofiler fra tusenvis av nettsteder, inkludert YouTube. Den kan konvertere nedlastinger til andre formater ved hjelp av FFmpeg.
Hvis du laster ned videoer fra YouTube, må du være oppmerksom på at plattformen ofte gjør endringer som ødelegger yt-dlp. I dette tilfellet finnes det vanligvis en nyere versjon, som du bør oppgradere til.
cURL, FFmpeg, make-ca, og Node.js
brotli (med Python3 bindinger), certifi, Requests, og Urllib3
Installer yt-dlp ved å kjøre følgende kommandoer:
pip3 wheel -w dist --no-build-isolation --no-deps --no-cache-dir $PWD
Nå, som root bruker:
pip3 install --no-index --find-links=dist --no-cache-dir --no-user yt_dlp
YouTube har gjort det slik at JavaScript utfordringer må utføres
for å hente fra nettstedet deres. Hvis du laster ned YouTube
videoer med denne pakken, last ned en JavaScript kjøretids/motor
som Node.js.
Følgende instruksjoner forutsetter at du har det installert.
Deretter oppretter du en systemkonfigurasjonsfil som ber yt-dlp om
å bruke Node.js for JS utfordringer og automatisk laste ned
utfordringsskriptene som kreves, som root bruker:
cat > /etc/yt-dlp.conf << EOF
--js-runtimes node --remote-components ejs:github
EOF
Nå vil yt-dlp bruke Node.js til å løse JS utfordringer ved nedlasting av YouTube videoer, og automatisk laste ned skript med yt-dlp for å gjøre det.
-w dist: Bygger det
passende «wheel» for denne modulen i mappen
dist.
--no-build-isolation:
Forteller at pip3
skal kjøre byggingen i systemmiljøet i stedet for å opprette et
midlertidig byggemiljø.
--no-deps: Forhindrer
pip3 fra å bygge
wheels for prosjektets avhengigheter.
--no-index: Ignorerer
pakkeindeksen (ser bare på --find-links URL-er i stedet).
--find-links dist: Søker
etter lenker til arkiver som for eksempel wheel (.whl) filer i mappen dist.
--no-cache-dir: Deaktiverer
hurtigbufferen for å forhindre en advarsel ved installasjon som
root bruker.
--no-user: Forhindre at du
feilaktig kjører install kommandoen som en ikke-root bruker.
--upgrade: Oppgrader pakken til den
nyeste tilgjengelige versjonen. Dette alternativet brukes med
install kommandoen hvis en versjon av pakken allerede er
installert.
--force-reinstall: Installer pakken på
nytt selv om den er oppdatert. Dette alternativet brukes med
install kommandoen hvis du installerer pakken på nytt eller går
tilbake til en tidligere versjon av pakken.
--no-deps: Ikke installer
pakkeavhengigheter. Dette alternativet kan være nødvendig med
--upgrade eller --force-reinstall alternativene.