No Maverick, havia a opção de baixar vídeos em Flash de sites como YouTube, Vimeo etc., copiando o flashxx**
arquivo no /tmp
diretório para outro local antes de fechar a janela. Mas no Firefox 4 no Natty, isso não funciona mais. Por quê?
No Maverick, havia a opção de baixar vídeos em Flash de sites como YouTube, Vimeo etc., copiando o flashxx**
arquivo no /tmp
diretório para outro local antes de fechar a janela. Mas no Firefox 4 no Natty, isso não funciona mais. Por quê?
Respostas:
Uma atualização para o plug-in flash mudou a localização de /tmp
para o diretório de cache do Firefox (por exemplo ~/.mozilla/firefox/bq95m4w1.default/Cache
). Infelizmente, o arquivo flash em cache não é tão fácil de encontrar como antes, mas é possível.
O comando a seguir lista todos os arquivos flash no cache do Firefox.
find ~/.mozilla/firefox/*.default/Cache -type f -exec file {} \; | grep Flash
Nas versões mais recentes do ubuntu, tente
find ~/.cache/mozilla/firefox/*.default/Cache -type f -exec file {} \; | grep Flash
file ~/.mozilla/firefox/*.default/Cache/* | grep Flash
? O diretório de cache não parece ter subdiretórios, o que poderia justificar o uso de find
.
Você pode usar vários complementos do Firefox para extrair os arquivos FLV de muitos sites, como o Youtube.
Vou mostrar abaixo como fazer isso manualmente com a versão mais recente do plugin Flash.
Em seguida, execute na linha de comando o comando
$ lsof -n | grep Flash
que mostra os arquivos (até arquivos de memória !) e filtra os que têm Flash
seu nome.
Você recebe algo como
plugin-co 2461 user 17u REG 8,5 1693301 524370 /tmp/FlashXXVkHEM6 (deleted)
.
Agora, existe um /tmp/FlashXXVkHEM6
mas foi excluído.
No Linux, se um arquivo é excluído, ele desaparece apenas quando todos os programas que o abriram anteriormente são fechados. Ou seja, o plugin do Flash está usando um truque para ocultar o arquivo / tmp / FlashXXVkHEM6. Cria e imediatamente deletes
. Mas como o plugin do Flash continua em execução, ele aparentemente ainda pode usá-lo.
Na linha acima, observamos o número 2461
, que é o ID do processo. No seu caso, provavelmente será diferente. Então corra
$ cd /proc/2461/fd
e finalmente executar
$ ls -l
Isso mostrará os arquivos de memória e, especificamente,
lrwx------ 1 user user 64 2011-09-16 10:23 17 -> /tmp/FlashXXVkHEM6 (deleted)
O número '17' (no meu caso) é o nome do arquivo que você pode usar para acessar os excluídos /tmp/FlashXXVkHEM6
. Portanto, basta executar
$ cp 17 /tmp/myyoutubevideo.flv
e você restaura o vídeo do Youtube!
É isso aí! Você recuperou manualmente o vídeo do Youtube!
Se você navegar para sua pasta / proc, verá várias pastas nomeadas numericamente, incluindo uma pasta que corresponde ao número no segundo campo.
Agora navegue até esta pasta e, em seguida, sua subpasta "fd". Nesta pasta, você verá toda uma seleção de números. Eles estão relacionados aos próprios descritores de arquivo.
Execute ls -l
nesta pasta e verá que cada um desses números está vinculado a tubos, soquetes ou arquivos.
Dentro disso, o número do quarto campo será simbólico vinculado ao arquivo / tmp / Flash * que encontramos anteriormente.
Para testar se esse é o arquivo certo, você pode executá-lo no mplayer ou no vlc ( mplayer filedescriptornumber
/ vlc filedescriptornumber
). Se estiver com problemas para encontrar o nome do arquivo, tente ls -l | grep Flash
.
Para facilitar, tente este comando no console:
stat -c %N /proc/*/fd/* 2>&1|awk -F[\`\'] '/Flash/{print$2}'
A saída será algo como isto:
/proc/4691/fd/17
/proc/4691/fd/18
Isso listará todos os seus fluxos de flash baixados. Para esse exemplo, existem 2 vídeos em flash no meu navegador firefox 4. Se você deseja copiá-lo, basta usar este comando:
cp /proc/4691/fd/17 ~/Videos/Flash/sample.flv
Fonte: http://n00bsys0p.wordpress.com/2011/02/10/how-to-download-flash-10-2-video-streams-in-linux/
Esse pequeno script salvaria os arquivos flash baixados em um diretório personalizado.
crie o diretório de onde você deseja que os arquivos sejam salvos, por exemplo, ~ / Videos / flvs
mkdir ~/Videos/flvs
abra o gedit e copie e cole este script.
#!/bin/bash
# flvcache script
CACHE=~/.mozilla/firefox/*.default/Cache
OUTPUTDIR=~/Videos/flvs
MINFILESIZE=2M
for f in `find $CACHE -size +$MINFILESIZE`
do
cp "$f" "$OUTPUTDIR/$o"
done
nautilus "$OUTPUTDIR"&
salve o arquivo como saveflashall.sh e adicione permissões executáveis ao arquivo
chmod +x saveflashall.sh
depois execute.
./saveflashall.sh
ele abriria os arquivos na primeira pasta criada acima. Personalizado para incluir todos os arquivos (trabalhados para mpeg e mp4) em vez de apenas flvs.
Os créditos vão para http://desdecode.blogspot.com/2011/04/saving-watched-online-videos-linux.html
Até onde eu sei, isso não se deve ao firefox nem ao natty, mas a uma atualização em flash ...
Você pode capturar o fluxo http wireshark
ou usar uma ferramenta como a youtube-dl
para obter o arquivo de filme.
Mas lembre-se de que pode não ser legal, portanto verifique sua legislação local ...
Você deve usar o flashgot para baixar os vídeos.
Ubuntu 12.04 (Precise) - Firefox 11 Instruções Uma versão modificada do script bash do chlumma1.
Com um editor de texto, salve o código abaixo no arquivo chamado "getvids.sh". Mova-o para o local em que você deseja salvar vídeos. Clique com o botão direito do mouse no arquivo, vá para Propriedades, Altere as Permissões para "Permitir a Execução como um Programa".
Tudo o que você precisa fazer é clicar no script, selecione "Executar no Terminal" e ele salvará todos os arquivos de vídeo nesse diretório. Para salvar o vídeo inteiro, é necessário concluir o carregamento no seu navegador. Ele salvará vídeos de praticamente qualquer site, incluindo youtube, vimeo, dailymotion, metacafe, liveleak, facebook . Basta excluir todos os arquivos de vídeo que você não deseja.
(Se um vídeo que você deseja não está sendo salvo, provavelmente o site está usando um formato de fluxo proprietário que não pode ser salvo por nenhum programa de recuperação de cache. Exemplos: Hulu, netflix, alguns vídeos do youtube?) Além disso, o VLC player é um ótimo para assistir vídeos em 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
Quem conhece um pouco do terminal pode editar as duas primeiras variáveis e obter um pouco de funcionalidade extra. Como alternativa, para visualizar os arquivos ao vivo, digite-o em um terminal para descobrir onde eles estão.for i in $(pgrep -f libflash); do find /proc/$i/fd/ -ls | grep "/tmp/Flash" | awk '{ print $11 }'; done
PS. Além disso, excelente trabalho chlumma1, mas dispensa um pouco o estilo de programação C;)
Versões recentes do plugin flash ocultam o arquivo temporário marcando-o como excluído. Praticamente o fluxo de vídeo é baixado para um "arquivo excluído". No entanto, mesmo quando um arquivo é excluído, se o arquivo é aberto por um processo, é possível encontrar seu descritor de arquivo e, consequentemente, o conteúdo do arquivo.
Esse script simples imprime os descritores de arquivo dos vídeos em Flash abertos:
file /proc/*/fd/* 2>/dev/null | grep Flash | cut -f1 -d:
E, provavelmente, você deseja criar um arquivo regular a partir do descritor de arquivo, por exemplo:
cp $(file /proc/*/fd/* 2>/dev/null | grep Flash | cut -f1 -d: | head -n 1) video.avi
Caso contrário, o descritor de arquivo não é muito conveniente (lembre-se, é um arquivo excluído!)
O método deve funcionar independentemente do seu navegador.
Ei, esse problema já existia na 10.10. Portanto, para resolvê-lo, tente o seguinte:
None of the methods described by previous posters are as convenient as just copying the flash file from the tmp directory.
Therefore, what I did was downgrade my Flash to 10.1.102.64
The download link for older versions of flash is http://kb2.adobe.com/cps/142/tn_14266.html
Download the (large) file named "Flash Player 10.1.102.64 and 9.0.289.0".
After downloading, extract the file named flashplayer10_1r102_64_linux.tar.gz
From this file extract libflashplayer.so and overwrite the file at /usr/lib/flashplugin-installer (you will need root privileges, try gksudo nautilus)
Restart Firefox and your flash videos will land up in the /tmp directory as before! This won't work for Google Chrome, it will continue to use the latest version of Flash.
Note: For the above steps to work, a version of Adobe Flash should have been previously installed.
[citado neste site: postado por chetancrasta Ver Post ]
Eu espero que isso te ajude. Deixe-me saber se isso vai funcionar.
Para um método geralmente aplicável que funciona com chrome ou firefox, tente este pequeno programa chamado flashcache . Ele copia vídeos em flash atualmente sendo reproduzidos no diretório atual.
Meu patch adiciona a opção -p
que faz com que o script reproduza os vídeos usando, em mplayer
vez de fazer cópias dos arquivos.
siga este link ( ~/.mozilla/firefox/ewzggcll.default/Cache
)
A menos que eu esteja realmente confuso (acho que não), esse "ewzggcll" não estará na sua máquina. O que você encontrará é uma coleção aleatória de letras (e possivelmente números?) Que provavelmente será exclusiva da sua instalação do Linux e Firefox. No entanto, essa coleção aleatória de aparência estranha é importante, porque é essencial para acessar os cache (s).
Espero que isto ajude! (HTH)
Eu uso o SMplayer YouTube. Ele vem com o Smplayer que você instala no ubuntu software center. Ele grava vídeos do youtube. Muito simples e fácil de usar.
Este script fará isso:
#!/bin/bash
PATERN="libflashplayer"
ALL_PID=`pgrep -f $PATERN`
if [ $? -eq 1 ]
then
echo ERROR: Flashplayer not runnig
exit 1
fi
for PID in $ALL_PID
do
OUTFILES=`ls -lt1 /proc/$PID/fd | grep '/tmp' | sed 's/^.*\/tmp\///' | sed 's/\ .*$//'`
INFD=`ls -lt1 /proc/$PID/fd | grep '/tmp' | cut -f 9 -d \ `
# nazev souboru do pole
i=0;
for out in $OUTFILES
do
i=`expr $i + 1`
NAMEFILE[$i]=$out
done
# nazev file desktiptoru do pole
i=0;
for out in $INFD
do
i=`expr $i + 1`
NAMEFD[$i]=$out
done
# ulozeni video dat
i=0;
for outfd in $OUTFILES
do
i=`expr $i + 1`
#echo ${NAMEFILE[$i]} ${NAMEFD[$i]}
cat /proc/$PID/fd/${NAMEFD[$i]} > ${NAMEFILE[$i]}.flv
done
done
O Mozilla parece alterar o local com muita frequência. Além disso, o nome do buffer não é o mesmo do vídeo, portanto, também é difícil descobrir o nome correto do heap. Portanto, salvar o arquivo em cache não é uma solução consistente. Se a instalação de um programa da área de trabalho estiver correta, o ClipGrab é a melhor ferramenta existente. Você pode
Você também pode usar o keepvid.com para muitos sites de streaming de vídeo. No entanto, é necessário que o java esteja em suas máquinas. Depois de instalado, basta colar no link do URL e salvá-lo em vários formatos, incluindo mp4 ou WebM
O método mais fácil é usar o complemento "CacheViewer Continued 0.8" para firefox
depois de instalar, pressione ctrl + shift + c para abrir e, em seguida, pressione mostrar tudo, depois você poderá procurar um cache específico como jpeg, flv qualquer coisa ...... clique com o botão esquerdo no item para dar a opção de salvar, salvar fornecendo a extensão necessária, como .flv para vídeo em flash e .jpeg para jpeg e vice-versa
link para o complemento https://addons.mozilla.org/en-US/firefox/addon/cacheviewer-continued/?src=api
Isso ainda é possível.
Você pode usar o script de shell deste post sobre como abrir / reproduzir todos os vídeos em Flash com o VLC .
Para copiar todos os vídeos que você tem que substituir na última linha do script vlc
por cp
e fornecer um diretório de destino no final da mesma linha.
Espero que isso ajude você http://sahanlm.blogspot.com/2012/05/how-to-copy-google-chrome-cache-flash.html