Ich suche ein Tool, um einen Blog, der sich täglich oder sogar zwei- oder dreimal täglich ändert, platzsparend zu archivieren. Damit meine ich nicht, dass sich einzelne Blogbeiträge ändern – jedenfalls nicht regelmäßig –, sondern nur, dass neue Blogeinträge hinzugefügt und ältere Einträge auf der Startseite nach unten verschoben werden. Ein Problem, das ich sehe, ist, dass es ineffizient wäre, denselben Blogeintrag mehrfach zu archivieren. Überarbeitungen desselben Eintrags sollten idealerweise archiviert werden, das Original jedoch nicht, da die Überarbeitung wahrscheinlich auf eine Verbesserung oder Korrektur zurückzuführen ist.
Es handelt sich um ein blogspot.com-Blog mit Text und statischen Bildern. Eine Linux-Lösung wird bevorzugt.
Antwort1
Eine Lösung besteht darin, es in einem Git-Repository zu speichern.
Da Git inhaltsbasierte Adressierung verwendet, beanspruchen unveränderte Dateien kaum zusätzlichen Speicherplatz im Repository. Revisionen beanspruchen ebenfalls wenig Speicherplatz, da sie Unterschiede speichern. Anfangs werden die Blobs einzeln komprimiert gespeichert, aber Git fasst Dateien regelmäßig zu Paketen zusammen, die effektiver komprimiert sind. Sie können diese Funktion auch manuell mithilfe von aufrufen git gc
.
Eine einfache Möglichkeit, die Websitedaten abzurufen, ist die Verwendung von wget --mirror
. Alternativ können Sie prüfen, ob die Blog-Site eine XML-API bereitstellt (was platzsparender wäre, da keine HTML-Standardtexte archiviert werden müssen). Sie möchten die Seiten in den aktuellen Arbeitsbaum herunterladen.
Fügen Sie dann nach Abschluss des Downloads alles zum Git-Repository hinzu und committen Sie es. Somit stellt jedes Commit eine Momentaufnahme dar.