Archiver un site web

© Christian PAULUS. Document créé le 4 octobre 2010 , mis à jour le 1er février 2011.

L'homme qui ne tente rien ne se trompe qu'une fois. Lao-Tseu

Accueil du site > Astuces > Unix > Archiver un site web

wget / shell

Recopier un site web, ou un extrait de site web, via un script wget, appelé en ligne de commande. Description de quelques options.

Dans la lignée du billet sur le plugin Site Archive pour SPIP, un script de base pour la copie miroir d’un site web via la commande wget :

#!/bin/sh

if [ ! -n "$1" ]
then
       echo "Usage: `basename $0` url"
       exit
fi

wget -r --page-requisites \
       --convert-links \
       --backup-converted \
       --cut-dirs=1 \
       --restrict-file-names=windows \
       "$1"

Cet exemple permet de recopier un site web, ou un extrait de site, donné en paramètre dans un dossier qui porte le nom du site de ce paramètre.

Les options wget utilisées

  • -r pour le mode récursif ;
  • —page-requisites télécharger tous les fichiers nécessaires à l’affichage de la page ;
  • —backup-converted conserver une copie du fichier converti ;
  • —cut-dirs=1 ignorer le premier répertoire dans la restitution. Permet de raccourcir les liens ;
  • —restrict-file-names=windows renomme les fichiers pour être exploitables par Windows. Besoin cruel pour les URL du type http://foo.bar/?spip.php ou le  ? est incompris par l’outil de (dé)compression sous XP. Avec cette option, le  ? est converti en @.

Documentations wget

A lire, parfois en français :

Plussoyez !

Les forums sont fermés.