Quantcast
Channel: hackplayers
Viewing all articles
Browse latest Browse all 1671

Clonar un portal Moodle (y más) en dos patadas con wget

$
0
0
Andaba yo viendo una manera efectiva y rápida para clonar un sitio web, buscando la mejor herramienta tipo Teleport Pro o HTTrack, cuando un compi me comentó que wget es bastante potable incluso para spidering/crawling. Y tanto que sí. Basta echar un vistazo al manual de la herramienta para darse cuenta de que wget no sólo vale para descargar un simple fichero, si no que tiene muchísimas opciones y parámetros que se pueden adaptar según el sitio web que quieras duplicar.

Sirva de ejemplo el de esta entrada con el que es posible crear un mirror de cualquier portal que use Moodle, ya sabéis, un sistema de gestión de cursos de formación. Imaginaros lo rápido que obtendríamos una copia de un curso en concreto que nos interesara para poder consultarlo offline cuando nos vamos de viaje...

Primero obtenemos la cookie ya que, evidentemente, la autenticación en Moodle se realiza mediante un formulario de login:

wget --load-cookies my-cookies.txt \
--post-data='username=YOUR_USERNAME&password=YOUR_PASSWORD&testcookies=1'
--save-cookies=my-cookies.txt --keep-session-cookies http://moodlesite.com/

Luego, con dicha cookie, comenzamos con el mirror mediante los siguientes parámetros:

wget --load-cookies my-cookies.txt --keep-session-cookies --save-cookies my-cookies.txt\
--referer=http://moodlesite.com/login/index.php -m -E -k
--reject logout*,*cal_m*,*cal_y*,post.php*,*subscribe*,help.php*,enrol.php*
--exclude-directories=/calendar http://moodlesite.com/course/view.php?id=XXX
-m: activa el mirroring. Es equivalente a ‘-r -N -l inf –no-remove-listing’
-E: si un fichero de tipo ‘application/xhtml+xml’ o ‘text/html’ es descargado y la URL no termina con la regexp ‘\.[Hh][Tt][Mm][Ll]?’, esta opción pondrá el sufijo ‘.html’
-k: después de que la descarga se complete, convierte los enlaces para hacerlos accesibles de forma local.
--exclude-directories: directorios que el crawler saltará.
--reject: indica los ficheros que wget no salvará al disco

Y básicamente esto sería lo suficiente para empezar y hacer un mirror de un portal Moodle. Luego podríamos hacer menos "ruido" modificando el user-agent, usando un proxy (Tor!), añadiendo pausas entre descargas, etc. Así que toca empezar a cocinar algunas pruebecillas:

wget -r -l 0 -U Mozilla -t 1 -nd -D playboy.com -A jpg,jpeg,gif,png "http://www.playboy.com" -e robots=off

Viewing all articles
Browse latest Browse all 1671

Trending Articles


Vimeo 10.7.1 by Vimeo.com, Inc.


UPDATE SC IDOL: TWO BECOME ONE


KASAMBAHAY BILL IN THE HOUSE


Girasoles para colorear


Presence Quotes – Positive Quotes


EASY COME, EASY GO


Love with Heart Breaking Quotes


Re:Mutton Pies (lleechef)


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


Vimeo 10.7.0 by Vimeo.com, Inc.


FORECLOSURE OF REAL ESTATE MORTGAGE


FORTUITOUS EVENT


Pokemon para colorear


Sapos para colorear


Smile Quotes


Letting Go Quotes


Love Song lyrics that marks your Heart


RE: Mutton Pies (frankie241)


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...


Long Distance Relationship Tagalog Love Quotes