| @@ -0,0 +1,48 @@ | |||||
| #! /bin/sh | |||||
| # Importuje artykuły z Micropedii i SclaviniaWiki z listy podanej na | |||||
| # standardowym wejściu. | |||||
| # Copyright © 2017 Paulina Laura Emilia <vilene@posteo.net> | |||||
| # | |||||
| # This program is free software. It comes without any warranty, to | |||||
| # the extent permitted by applicable law. You can redistribute it | |||||
| # and/or modify it under the terms of the Do What The Fuck You Want | |||||
| # To Public License, Version 2, as published by Sam Hocevar. See the | |||||
| # COPYING file for more details. | |||||
| set -C | |||||
| # Sprawdź czy skrypt mediawiki2ency.sh jest w ścieżce wyszukiwania lub | |||||
| # w bieżącym katalogu. | |||||
| if ! mediawiki2ency=$(PATH=$PATH:. command -v "mediawiki2ency.sh"); then | |||||
| printf '%s: %s %s\n' "$0" 'Nie znaleziono skryptu mediawiki2ency.sh w' \ | |||||
| 'bieżącym katalogu bądź ścieżce wyszukiwania.' >&2 | |||||
| exit 1 | |||||
| fi | |||||
| # Wybierz prefiks URL-a stron w zależności od źródła. | |||||
| case $1 in | |||||
| --sclavinia) | |||||
| prefix=http://vonthorn.sarmacja.org/wiki/index.php/ | |||||
| ;; | |||||
| *) | |||||
| prefix=http://micropedia.wikia.com/wiki/ | |||||
| esac | |||||
| # Czytaj listę ze standardowego wejścia. | |||||
| while IFS= read -r name; do | |||||
| urlname=$(printf '%s\n' "$name" | sed -e 's/ /_/g') | |||||
| filename=Encyklopedia::$urlname.txt | |||||
| if [ -e "$filename" ]; then | |||||
| printf '%s: %s: %s\n' "$0" "$filename" 'Plik już istnieje.' >&2 | |||||
| continue | |||||
| fi | |||||
| if ! curl -fso "$filename.tmp" "$prefix$urlname?action=raw"; then | |||||
| printf '%s: %s: %s\n' "$0" "$name" \ | |||||
| 'Nie udało się pobrać artykułu.' >&2 | |||||
| continue | |||||
| fi | |||||
| "$mediawiki2ency" "$@" "$filename.tmp" "$name" > "$filename" | |||||
| rm -f "$filename.tmp" | |||||
| done | |||||