Ubuntu 12.04 (Preciso) - Istruzioni per Firefox 11 Una versione modificata dello script bash di chlumma1.
Con un editor di testo, salva il codice in basso nel file "getvids.sh". Spostalo nella posizione in cui desideri salvare i video. Fare clic con il tasto destro del mouse sul file, selezionare Proprietà, modificare le autorizzazioni in "Consenti esecuzione come programma".
Tutto quello che devi fare è fare clic sullo script, selezionare "Esegui nel terminale" e salverà tutti i file video in quella directory. Per salvare l'intero video, è necessario completare il caricamento nel browser. Salverà video da quasi tutti i siti Web, inclusi YouTube, Vimeo, dailymotion, Metacafe, Liveleak, Facebook . Elimina semplicemente tutti i file video che non desideri.
(Se un video desiderato non viene salvato, probabilmente il sito Web utilizza un formato stream proprietario che non può essere salvato da alcun programma di recupero della cache. Esempi: Hulu, Netflix, alcuni video di YouTube?) Inoltre, VLC player è un ottimo per guardare video in flash.
#!/usr/bin/env bash
# getvids.sh [save_folder]
SAVE_FOLDER="$HOME" # User editable
# If the below option is used, then this script should be run in a terminal.
#CPMOD="-i" # Uncomment to prevent file overwrites
PATERN="libflashplayer"
ALL_PID=`pgrep -f $PATERN`
if [ $? -eq 1 ]; then
echo ERROR: Flashplayer not running
exit 1
fi
if [ ! -z $1 ]; then
echo "Setting save location: $1"
SAVE_FOLDER="$1"
fi
if [ ! -d "$SAVE_FOLDER" ]; then
echo "Save location doesn't exist: $SAVE_FOLDER"
exit 1
fi
for PID in $ALL_PID; do
declare -a OUTFILES=($(ls -lt1 /proc/$PID/fd | grep '/tmp/Flash' | sed 's/^.*\/tmp\///' | sed 's/\ .*$//'))
declare -a FDS=($(ls -lt1 /proc/$PID/fd | grep '/tmp/Flash' | awk '{ print $9 }' ))
for ((i=0; i<${#FDS[@]}; i++)); do
saveas="$SAVE_FOLDER/${OUTFILES[i]}.flv"
echo "Copying video ${FDS[i]} to $saveas"
cp $CPMOD "/proc/$PID/fd/${FDS[i]}" "$saveas"
done
done
Chi conosce un po 'il terminale può modificare le prime due variabili e ottenere una funzionalità extra. In alternativa, per visualizzare i file dal vivo, è possibile digitare questo in un terminale per scoprire dove sonofor i in $(pgrep -f libflash); do find /proc/$i/fd/ -ls | grep "/tmp/Flash" | awk '{ print $11 }'; done
PS. Inoltre, eccellente lavoro chlumma1, ma elimina un po 'i cicli di stile C;)