Je veux obtenir tous les fichiers d'un site Web donné sur archive.org. Les raisons pourraient inclure:
Comment je fais ça ?
Considérant que la machine à remonter archive.org est très spéciale: les liens de page Web ne pointent pas sur l'archive elle-même, mais sur une page Web qui pourrait ne plus être là. JavaScript est utilisé côté client pour mettre à jour les liens, mais une astuce telle qu'un wget récursif ne fonctionnera pas.
J'ai essayé différentes manières de télécharger un site et j'ai finalement trouvé le téléchargeur de machine à remonter le chemin - qui avait déjà été mentionné par Hartator (donc tout le mérite lui revient, s'il vous plaît), mais je n'ai tout simplement pas remarqué son commentaire à la question. Pour vous faire gagner du temps, j'ai décidé d'ajouter la gem wayback_machine_downloader en tant que réponse séparée ici.
Le site à http://www.archiveteam.org/index.php?title=Restoring répertorie ces méthodes de téléchargement à partir de archive.org:
Cela peut être fait en utilisant un script shell bash combiné à wget
.
L'idée est d'utiliser certaines des fonctionnalités d'URL de la machine à remonter le chemin:
http://web.archive.org/web/*/http://domain/*
liste toutes les pages enregistrées de http://domain/
de manière récursive. Il peut être utilisé pour construire un index de pages à télécharger et éviter les heuristiques pour détecter des liens dans des pages Web. Pour chaque lien, il y a aussi la date de la première version et la dernière version.http://web.archive.org/web/YYYYMMDDhhmmss*/http://domain/page
liste toutes les versions de http://domain/page
pour l'année AAAA. Dans cette page, des liens spécifiques vers les versions peuvent être trouvés (avec l'horodatage exact)http://web.archive.org/web/YYYYMMDDhhmmssid_/http://domain/page
renverra la page non modifiée http://domain/page
à l’horodatage donné. Notez le jeton id_ .Ce sont les bases pour construire un script pour tout télécharger d'un domaine donné.
Il existe un outil spécialement conçu à cet effet, Warrick: https://code.google.com/p/warrick/
Il est basé sur le protocole Memento.