viernes, 29 de abril de 2016

Descargar vídeos flash en GNU/Linux (sin tener que instalar nada de nada)

Aunque flash cada día está más de capa caída (afortunadamente) y youtube por ejemplo ya funciona con html5; aún hay muchos vídeos en la red con ese anacrónico formato y problemático reproductor. Por ello y aunque ya hemos puesto alguna entrada sobre cómo descargar vídeos de youtube junto con los subtítulos, pero he visto una forma simple y fácil de descargar vídeos en flash sin tener que instalar nada de nada. Lo vi por casualidad navegando por la red en esta web, y se basa en dos comandos simples:

lsof |grep Flash

Que sirve para buscar el archivo de vídeo, mostrando algo de este estilo:

plugin-co 2925   kaos1204   42u      REG                8,6  1746126  141520 /tmp/FlashXXSccA9R (deleted)

Y cuando el archivo esté cargado al completo en el navegador ya se puede copiar fácilmente teniendo en cuenta los números resaltados de lo mostrado en el anterior comando de búsqueda, que dando así:

cp /proc/2925/fd/42 video.flv

Pero en los comentarios un tal «Vampire» programó un script en bash para usar este método de forma fácil y cómoda; y como me gustó, lo prové, va bien y no quiero perderlo, pues lo pongo aquí que lo uso como chuletario para cuando me haga falta jeje:

#!/bin/bash
timeSleep=100; #Modificar para el tiempo de espera en la comprovacion de descarga.
echo Herramienta para salvar videos flash de firefox.
echo Solo mantenga abiertos los videos que necesita salvar.
echo Buscando videos flash...
#findFile=$(lsof | grep -i flash | grep "deleted");
PID=$(ps -C plugin-container | grep "plugin" | awk -F" " '{print $1}');
findFile=$(lsof -p $PID | grep -i flash | grep "deleted");
echo
c=0;
while IFS= read -r; do
line="$REPLY";
folderFlash=$(echo $line | awk -F" " '{print $2}');
fileFlash=$(echo $line | awk -F" " '{print $4}');
copyNumber=${#fileFlash};
copyNumber=$(expr $copyNumber "-" 1);
fileFlash=${fileFlash:0:$copyNumber};
urlFiles[$c]="/proc/$folderFlash/fd/$fileFlash";
c=$((++c));
done<<<"$findFile"
echo Se han encontrado $c archivos de video flash;
c=0;
for fileURL in ${urlFiles[*]}; do
fileSizeOld[$c]=$(du -sL $fileURL | awk -F" " '{print $1}');
echo "Ubicacion: $fileURL Capacidad: ${fileSizeOld[$c]}";
c=$((++c));
done
echo
echo Esperando que la descarga de los archivos termine.
echo
vid=0;
while [ $c != 0 ]
do
sleep $timeSleep;
i=0;
while [ $i != $c ]
do
fileURL=${urlFiles[$i]};
if [ -e $fileURL ]
then
fileSizeNew=$(du -sL $fileURL | awk -F" " '{print $1}');
if [ ${fileSizeOld[$i]} != $fileSizeNew ]
then
fileSizeOld[$i]=$fileSizeNew;
echo El archivo $fileURL ahora contiene $fileSizeNew bytes.
i=$((++i));
else
echo La descarga del archivo $fileURL a concluido o se a dejado de descargar.
cp $fileURL "video$vid.flv";
echo El archivo $fileURL se a copiado a la direccion: $PWD/video$vid.flv;
vid=$((++vid));
for ((j=$i;j<=$c;j++)); do
urlFiles[$j]=${urlFiles[$j+1]};
fileSizeOld[$j]=${fileSizeOld[$j+1]};
done
c=$((--c));
fi
else
echo Se perdio el video $fileURL porque se ha cerrado la pagina de reproduccion.
for ((j=$i;j<=$c;j++)); do
urlFiles[$j]=${urlFiles[$j+1]};
fileSizeOld[$j]=${fileSizeOld[$j+1]};
done
c=$((--c));
fi
done
done
echo Pulse enter para continuar.
read


Yo le he modificado el tiempo de espera pero el resto es íntegro de Vampire ya que funciona bien tal y como está. Si a alguien le viene bien pues genial, yo al menos estoy seguro de que le daré buen uso jeje.

domingo, 21 de abril de 2013

Libro online para aprender R fácilmente

Cuando tenía que haber aprendido a usar R no lo pude hacer (da igual los motivos y situación), y me quedó esa espinita ahí, pero hoy encontré esta genial web que recomiendo incluso a los más neófitos en el tema:

http://tryr.codeschool.com/

Espero que les sea tan útil como lo ha sido para mí, es una genial forma de iniciarse en este gran programa (y lenguaje de programación) informático libre.

lunes, 18 de marzo de 2013

Descarga A Heat Transfer Textbook gratis

Hoy os proponemos la descarga de un excepcional libro sobre Transferencia de calor de forma gratuita y totalmente legal. Se trata de la tercera edición de A Heat Transfer Textbook de los autores John H. Lienhard IV y John H. Lienhard V, en formato PDF.

El libro hace un repaso por los mecanimos de transmisión de calor: conducción, convección y radiación, además de proporcionar una introducción a la transferencia de materia.

Sin duda un gran libro a un precio imbatible.  Que lo disfrutéis.

domingo, 17 de marzo de 2013

Reducir el tamaño de los archivos PDF en GNU/Linux

A veces, es necesario reducir el tamaño los archivos PDF para poder enviarlos en un correo, o incluirlos en una determinada solicitud telemática que fija un tamaño máximo, especialmente si contienen imágenes.

Una de las maneras más rápidas de conseguir esto en GNU/Linux nos la proporciona Ghostscript mediante el comando gs. Así, para obtener un archivo de menor tamaño debe escribirse en una terminal el comando (sin las comillas):

"gs -sDEVICE=pdfwrite -dCompatibilityLevel=1.4 -dPDFSETTINGS=/screen -dNOPAUSE -dQUIET -dBATCH -sOutputFile=reducido.pdf original.pdf"
 
Donde original es el archivo cuyo tamaño se desea reducir y reducido es el nombre del archivo resultante.

La opción /screen puede cambiarse por /ebook o /print, obteniendo cada vez un archivo con algo más de calidad pero de mayor tamaño. 

martes, 5 de marzo de 2013

Plantillas LaTeX

Reconozco que la curva de aprendizaje en \LaTeX se puede hacer un poco cuesta arriba, ya que es un gran cambio de mentalidad con respecto a las herramientas gráficas de uso generalizado tipo Word o Writer; pero existen formas de hacer la transición más fácil, por ejemplo usar lyx, o recurrir a plantillas LaTeX ya hechas para así no tener que andar buscando mucho cómo hacer algo en concreto. Para este último caso, recomiendo en concreto visitar esta web que encuentro muy recomendable para novatos e incluso no tan novatos:

http://www.latextemplates.com/

En concreto, y teniendo en cuenta este blog, me ha llamado especialmente la atención esta hoja de cálculo de ingeniería:

http://www.latextemplates.com/template/engineering-calculation-paper

Aunque produce 3 badbox por un incorrecto uso de la doble barra «\\» para añadir un espacio extra, nada que no se solucione fácilmente sustituyendo esas dobles barras por un simple \vspace{0.5cm} o la opción que más se ajuste a tus gustos.

Y como siempre, hay muuuucha información por la red, pero para algo simple y rapidito este wikibooks siempre lo recomiendo:

http://en.wikibooks.org/wiki/LaTeX

Así que no hay excusa, «be LaTeX my friend» ;).

Impressive, presentaciones molonas con pdfs

Entrada rapidita para aconsejar este magnífico programita, la única «pega» es que a la mayoría de la gente no le va a gustar eso de que no tenga interfaz gráfica y tener que usar un script para configurarlo a tu gusto; pero como tampoco es imprescindible, se lo recomiendo probar igualmente.

Está en la mayoría de los repositorios supongo y sino pues:

http://impressive.sourceforge.net/

También está para windows.

lunes, 11 de febrero de 2013

Usando la fuente Arial en LaTeX

Al no ser una fuente libre, la fuente Arial no viene instalada en TeXLive 2012. Sin embargo, es una fuente común que es conveniente tener instalada en nuestro sistema.

La manera de instalar esta y otras fuentes en nuestro sistema GNU/Linux pasa por descargar el script getnonfreefonts , que no viene incluido en la ISO del DVD de TexLive por motivos de espacio.

Una vez descargado, hemos de instalarlo mediante el comando:

sudo texlua install-getnonfrefonts

En TeXLive 2012 este script se instala en el directorio:

/usr/local/texlive/2012/texmf/scripts/

Así, una vez en él, debe ejecutarse el siguiente comando para instalarlas:

sudo getnonfreefonts.pl -a

Las fuentes que se instalan mediante este script son las siguientes :
  • Arial (URW)
  • Classico (URW)
  • DayRoman (Apostrophiclabs)
  • Euro symbols (Adobe)
  • GaramondNo8 (URW)
  • GaramondNo8 Expert (Michael Sharpe)
  • LetterGothic (URW)
  • LuxiMono (Bigelow & Holmes)
  • VnTeX nonfree (Hàn Thế Thành)
  • Webomints (Galapagos Design Group) 
Como siempre espero que os sea útil.