KARTz.RU
кушаешь морковь – встанет вновь и вновь

как скачать все картинки из википедии

Июль 11th, 2012

1. скачиваем свежий дамп
2. парсим/качаем

bzcat ruwiki-20120515-pages-articles.xml.bz2 | grep -o -E "\[\[Файл:[^\|]*" | sed -e 's/\[\[Файл\://g' | sed -e 's/ /_/g' | while read ; do echo "$REPLY"; m=$(echo -n "$REPLY" | md5sum | awk '{print $1}'); echo "$m"; url="http://upload.wikimedia.org/wikipedia/commons/${m:0:1}/${m:0:2}/${REPLY}"; echo "$url"; wget --restrict-file-names=nocontrol --no-clobber "$url"; done

потом "commons" в адресе заменяем на "ru" и прогоняем ещё раз
функционал - как у Wikix, только работа6ет лучше и компилить не надо

UPD. Дополненый вариант от sanyasi

#!/bin/bash

bzcat ruwiki-latest-pages-articles.xml.bz2 | grep -o -E "\[\[Файл:[^\|]*" | sed -e 's/\[\[Файл\://g' | sed -e 's/ /_/g' | while read REPLY; do
m=$(echo -n "$REPLY" | md5sum | awk '{print $1}')
m1=${m:0:1}
m2=${m:0:2}
url="http://upload.wikimedia.org/wikipedia/commons/$m1/$m2/${REPLY}" ; wget -nv -nc -x --restrict-file-names=nocontrol "$url"
url="http://upload.wikimedia.org/wikipedia/ru/$m1/$m2/${REPLY}" ; wget -nv -nc -x --restrict-file-names=nocontrol "$url"
done


Filed under: Без рубрики | Метки: ,
Июль 11th, 2012 22:37:38

Похожие посты:
no comments
Leave a Reply