Archive my Tweets – Backup der eigenen Tweets auf dem Uberspace

Ich besitze für meine verschiedenen Projekte jeweils verschiedene Twitter-Accounts. Twitter erlaubt einem nur den Zugriff auf die letzten 3200 Tweets der Timeline, und an ältere gelangt man nur, in dem man sich von Twitter alle Daten über seinen Account zuschicken lässt.

Mit der kleinen Webanwendung „Archive my Tweets“ hat man dieses Problem nicht mehr, denn diese sichert eure Tweets (täglich) auf euren Webspace.

Installation auf dem Uberspace

Nachdem wir uns auf dem Uberspace eingeloggt haben, müssen wir für die Software eine neue Datenbank anlegen.

echo "create database $(echo $USER)_twitter;" | mysql

Als nächstes legen wir einen Ordner für die Subdomain an und wechseln in das neue Verzeichnis:

mkdir /var/www/virtual/$USER/tweets.DOMAIN.de
cd /var/www/virtual/$USER/tweets.DOMAIN.de

DOMAIN.de solltet ihr dabei durch eure gewünschte Domain ersetzen.

Jetzt benötigen wir nur noch den Quelltext, welchen wir uns direkt von GitHub herunterladen:

git clone https://github.com/amwhalen/archive-my-tweets.git .

Damit später die von Archive my Tweet genutzten RewriteRules funktionieren, müssen wir die .htaccess um eine Zeile erweitern:

sed -i '2i\RewriteBase /' .htaccess

Wenn alles bis hierhin funktioniert hat, dann solltet ihr einen Konfigurationsdialog unter „tweets.DOMAIN.de“ vorfinden.

Die Informationen zum Ausfüllen der Felder sind meiner Meinung nach ausführlich und eindeutig beschrieben, sodass ich an dieser Stelle nicht weiter drauf eingehe.

Archive my Tweet Konfiguration

Archive my Tweet Konfiguration

Nachdem ihr die Daten ausgefüllt und den „Save & Install“ Button betätigt habt, lädt Archive my Tweets die letzten 3200 Tweets herunter. Solltet ihr mehr Tweets haben, dann müsst ihr diese von Twitter anfordern und selbst einpflegen. Weitere Informationen dazu gibt es auf GitHub.

Nach dem Import der Tweets sollte Archive my Tweets diese übersichtlich auflisten:

Archive my Tweets - Tweetübersicht

Archive my TweetsTweetübersicht

Update per Cronjob

Da man täglich neue Tweets verfasst, und den Backup-Prozess nicht immer selbst anstoßen möchte, können wir das auch dem Cronjob überlassen.

Um die Cronjobs zu verwalten, führen wir folgenden Befehl aus:

crontab -e

Die bestehenden Einträge müssen um folgende Einträge erweitert werden:

PATH=/package/host/localhost/php-5/bin:/bin:/usr/bin
PHPRC=/home/BENUTZER/etc
@daily php /var/www/virtual/BENUTZER/tweets.DOMAIN.de/cron.php > /dev/null

Wobei BENUTZER bzw. DOMAIN mit den entsprechenden Werten ersetzt. Falls der Nano geöffnet wurde, dann betätigt man einmal Strg+O gefolgt von Strg+X, um die Veränderungen zu speichern. Der Cronjob wird einmal täglich die neusten Tweets herunterladen. Die Änderungen sollte uns crontab bestätigen:

crontab: installing new crontab

Fazit

Nachdem Tweet Nest nicht mehr korrekt funktionierte, und mein Postfach mit Fehlermeldungen beim Ausführen des Cronjobs zumüllte, ist die Suche nach einer Alternative mit Archive my Tweets beendet. Es bietet die gleiche Funktionalität und lässt sich einfach einrichten bzw. bedienen.

Zum täglichen Backup seiner Tweets ohne weiteren SchnickSchnack ist das meiner Meinung nach ideal.

~Sebastian