miércoles, 22 de julio de 2015

Como migrar de blogspot.com a un blog estatico con dos scripts de perl

Armé este script por que necesitaba migrar mi blog de blogspot,
tengo escritos 10 años y es mucho contenido para migrar manualmente.
Probé unos programas que existen actualmente, en internet, no recuerdo
el nombre en este momento, pero si bien dicen hacer lo que necesito, la realidad
es que no funcionaban a la fecha (Diciembre 2014). Por eso en mis ratos libres
comencé a hacer este proyectito que puede serle de utilidad a otras personas

Estos dos scripts preparan los html del blog obtenido de blogspot
para que funcione de forma estática, sin requerir consultar imágenes de enlaces externos.

Son bienvenidas preguntas o posibles mejoras, por que lo testee muy poco.

Las instrucciones y los scripts estan en:

https://github.com/walt3rminer/blogspot2static

http://www.wallves.com/es/proyectos/

Primero se usa wget para bajar todo el blog, lo que pasa es que baja con muchos enlaces externos a imagenes y hojas de estilo.  Para ello se utiliza el script produce.pl que extrae solo los artículos y arma un índice.  Actualmente funciona con fechas en español e inglés, muy posiblemente haya blogs diferentes, asi que escribanme para que lo mejore!

BLOGNAME="poc-perl.blogspot.com.ar";
DIRSALIDA="output";
TMPFILE="ejemplo.html";

# Este comando puede tardar de acuerdo a cuanto contenido haya
wget -kr http://${BLOGNAME}/;

#wget -kr http://serverlinux.blogspot.com
# Setear los años para los cuales hemos escrito.
M=`seq 2005 1 2015`;

# Crear este directorio para almacenar la fotos del blog que seran bajadas
# con el siguiente script:
rm -rf externos
mkdir externos
# Borrar ejemplo.html
rm ${TMPFILE};
for i in $M; do
  find ${BLOGNAME}/$i -type f -exec ./produce.pl {} \; >> ${TMPFILE};
done

mkdir ${DIRSALIDA};
# summary.pl <nombre del html utilizado en el paso anterior> <directorio de salida>
./summary.pl ${TMPFILE} ${DIRSALIDA};

mv externos ${DIRSALIDA};

cp -r js ${DIRSALIDA};
cp -r css ${DIRSALIDA};

# Ahora a testear!
cd output
python ../httpserver.py

No hay comentarios.:

Publicar un comentario