Aspirer un site internet
Pour aspirer un site internet
$ wget -r -l5 -k -E "http://www.l_adresse_du_site.a_recuperer.com"
-r : récursif sur le site
-l5 : cinq niveaux de récursion au maximum
-k : convertir les destinations des liens pour une lecture locale
-E : convertir les types de fichier au format HTML (pour éviter que la lecture de sites en PHP ne foire en lecture sous Firefox).
A l'aide de l'outil httrack
$ sudo apt-get install httrack
Pour aspirer le site :
$ httrack --mirror http://mon-site.com
Pour mettre à jour le site aspirer (se placer dans le dossier du site):
$ httrack --update
Commentaires
ToTo (non vérifié)
jeu, 16/02/2023 - 11:17
Permalien
Authentification
Et comment fait-on sur un site où l'on doit s'authentifier au préalable ? Peut-on ajouter les id/pass en ligne de commande ?
ronan
jeu, 23/02/2023 - 22:18
Permalien
Authentification
Je pense que c'est possible.
Avec wget, il est possible d'utiliser des cookies pour la gestion de l'authentification.
Voir la doc ici
Loïc (non vérifié)
lun, 12/08/2024 - 15:20
Permalien
Si tu veux aspirer un site
Si tu veux aspirer un site avec authentification, tu peux essayer de passer les identifiants en ligne de commande avec wget en utilisant l'option --http-user et --http-password. Ça devrait ressembler à quelque chose comme :
```bash
wget --http-user=ton_identifiant --http-password=ton_mot_de_passe -r -l5 -k -E "http://www.l_adresse_du_site_a_recuperer.com"
Sinon, une autre méthode consiste à utiliser les cookies d'une session déjà ouverte. Tu démarres une session dans ton navigateur, exportes les cookies, puis les réutilises dans wget avec l'option --load-cookies. C'est un peu plus technique mais ça peut être bien utile si tu as des étapes d'authentification plus complexes.
Pour ceux qui utilisent httrack, je crois qu'il y a aussi moyen de gérer les cookies, mais c’est un peu plus galère. Peut-être que d’autres ici ont déjà testé et pourraient confirmer ?
Je bosse en agence web, et quand le besoin se présente c'est comme cela que je procède.
Ajouter un commentaire