Полное собрание сочинений на Mtaalamu
Решил я качнуть все свои материалы, размещенные на Mtaalamu. Не секрет ведь, что многие люди пишут на подобные сайты не столько из соображений честолюбия, сколько для того, чтобы мысль зафиксировать или описать какой-то алгоритм, чтобы потом его легко можно найти было. Чтобы все записи были под рукой даже в режиме offline я и предпринял такое действо. Может и еще кому пригодится эта технология.
Во-первых, топики зарегистрированного пользователя движка livestreet, на котором, как известно, работает Mtaalamu, можно посмотреть по адресу типа
В моем случае ${USERNAME} = yababay.
Список топиков разбит на страницы. В моем случае их 21 (да уж, понаписал за год). Скачиваем каждую без картинок, страниц и стилей:
В результате в текущий каталог выпадут файлы page1..page21. Выковыриваем из них гиперссылки:
Поскольку многие гиперссылки встречаются в списке не по одному разу, сортируем их
и вручную (увы, не знаю как это автоматизировать) удаляем дублирующиеся. Затем выкачиваем каждую страничку, захватывая, помимо html, только картинки (в формате png в моем случае):
Почему такие ключи у команды wget — не знаю, взял готовую. Скажу только, что если не ограничить содержимое ключом -A, то скачаются также js-скрипты, css-стили и т.п. Оно мне, вроде как, не надо, это хозяйство можно и с сайта подтянуть .
Во-первых, топики зарегистрированного пользователя движка livestreet, на котором, как известно, работает Mtaalamu, можно посмотреть по адресу типа
/my/${USERNAME}/
В моем случае ${USERNAME} = yababay.
Список топиков разбит на страницы. В моем случае их 21 (да уж, понаписал за год). Скачиваем каждую без картинок, страниц и стилей:
for i in {1..21}
do
wget /my/yababay/page$i
done
В результате в текущий каталог выпадут файлы page1..page21. Выковыриваем из них гиперссылки:
for i in {1..21}
do
cat page$i | egrep -o -e 'http://mtaalamu.ru[/.a-z0-9]+html' >> myarticles.txt
done
Поскольку многие гиперссылки встречаются в списке не по одному разу, сортируем их
cat myarticles.txt | sort > myarticles.sorted
и вручную (увы, не знаю как это автоматизировать) удаляем дублирующиеся. Затем выкачиваем каждую страничку, захватывая, помимо html, только картинки (в формате png в моем случае):
for i in `cat myarticles.sorted`
do
wget -A png,html -p -nH -nd -P. --convert-links $i
done
Почему такие ключи у команды wget — не знаю, взял готовую. Скажу только, что если не ограничить содержимое ключом -A, то скачаются также js-скрипты, css-стили и т.п. Оно мне, вроде как, не надо, это хозяйство можно и с сайта подтянуть .
Комментарии (5)
RSS свернуть / развернутьGangsta
Gangsta
Попробую — отпишусь.
yababay
durman
(Из исходников собирал, собираю и собирать буду!)
yababay
Только зарегистрированные и авторизованные пользователи могут оставлять комментарии.