====== Interfaccia grafica a youtube-dl tramite zenity ====== Autore: **//Fabio Di Matteo//** \\ Ultima revisione: **//21/02/2018 - 09:30//** \\ \\ {{:programmazione:bash:my-youtube-dl.png|}} Di seguito un piccolo script che fornisce un'interfaccia grafica a [[https://rg3.github.io/youtube-dl/|Youtube-dl]] . Richiede bash,zenity,xterm **my-youtube-dl** (da copiare in /usr/local/bin/) #!/bin/bash DIRECTORY=/home/$USER/Download/youtube url=$(zenity --title='Scarica da youtube e altri' --width=600 --cancel-label='Esci' --ok-label='Scarica!' --entry --text "Inserisci il collegamento al video") if [ ! -z "$url" ]; then if [ ! -d "$DIRECTORY" ]; then mkdir -p $DIRECTORY fi cd $DIRECTORY echo $url xterm -e "youtube-dl $url" zenity --width=250 --info --text "Scaricamento terminato.\n Puoi trovare il video in $DIRECTORY . " fi **myyoutubedl.desktop** (da copiare in /usr/share/applications) #!/usr/bin/env xdg-open [Desktop Entry] Version=1.0 Type=Application Terminal=false Icon=qv4l2 Icon[it_IT]=qv4l2 Name[it_IT]=Scaricatore youtube Exec=my-youtube-dl Comment[it_IT]=Scarica da youtube Name=Scaricatore youtube Comment=Scarica da youtube Categories=Network; ===== Aggiungiamo il supporto allo scaricamento dell'audio ===== #!/bin/bash DIRECTORY=/home/$USER/Scaricati/youtube url=$(zenity --title='Scarica da youtube e altri' --width=600 --cancel-label='Esci' --ok-label='Avanti' --entry --text "Inserisci il collegamento al video") function downloadVideo(){ if [ ! -d "$DIRECTORY" ]; then mkdir -p $DIRECTORY fi cd $DIRECTORY echo $url xterm -e "youtube-dl $url" zenity --width=250 --info --text "Scaricamento terminato.\n Puoi trovare il video in $DIRECTORY . " } function downloadAudio(){ if [ ! -d "$DIRECTORY" ]; then mkdir -p $DIRECTORY fi cd $DIRECTORY echo $url xterm -e "youtube-dl --extract-audio --audio-format mp3 $url" zenity --width=250 --info --text "Scaricamento terminato.\n Puoi trovare il video in $DIRECTORY . " } if [ ! -z "$url" ]; then opt=$(zenity --list --radiolist --title="Opzioni di scaricamento" --text="Vuoi scaricare audio o video?" \ --add-entry="File:" --column="Scelta" --column="Flusso" TRUE VIDEO False AUDIO --ok-label='Scarica!') if [ "$opt" == "VIDEO" ]; then downloadVideo fi if [ "$opt" == "AUDIO" ]; then downloadAudio fi fi