Benutzer:Asturius/Software-Wiki/Massenexport/Exportskript
Zur Navigation springen
Zur Suche springen
#!/bin/bash
# Ausgewählte gelöschte Artikel temporär wiederherstellen,
# exportieren bzw. lokal sichern und erneut löschen.
BASEURL=https://de.wikipedia.org/w/index.php
EXPORTFILE=~/Werkstatt/Software-Wiki/exportieren.txt
EXPORTDIR=~/Werkstatt/Software-Wiki/bereitsexportiert
mkdir -p $EXPORTDIR
# Einloggen
# TODO
# Liste zu exportierender Artikel durchgehen und exportieren
while true
do
SEITE=`head -n 1 $EXPORTFILE`
if [ -z "$SEITE" ]
then
echo "Datei $EXPORTFILE ist leer."
break
fi
SEITE2=`echo "$SEITE" | tr [:blank:] _ | sed 's/&/%26/g' | sed 's/+/%2B/g'`
# Artikel (temporär) wiederherstellen
# TODO
# Existiert der Artikel?
SEITENINHALT=`curl -s "$BASEURL?title=$SEITE2&action=raw"`
if [ -n "$SEITENINHALT" ]
then
# Artikel existiert, also exportieren.
echo "Exportiere Artikel $SEITE"
curl -s -d "&pages=$SEITE2&action=submit" \
$BASEURL?title=Special:Export > "${EXPORTDIR}/${SEITE}.xml"
# HMTL-Version mit dazu (für einfache Vorschau).
curl -s "$BASEURL?title=$SEITE2&action=render" > "${EXPORTDIR}/${SEITE}.html"
echo "<meta charset="UTF-8" />" >> "${EXPORTDIR}/${SEITE}.html"
else
echo "Fehler: Artikel $SEITE existiert nicht!"
fi
# Artikel wieder löschen
# TODO
# Artikel aus Exportliste entfernen
sed -i '1d' $EXPORTFILE
done