|
|
||
Сохраняем свой раздел сами - со всеми комментариями. |
Предполагается, что человек, читающий это краткое руководство, достаточно хорошо дружен с Un*x, чтобы установить wget и perl (версии не ниже 5), необходимые для выполнения инструкций.
Вам потребуется небольшой скрипт на Perl для сохранения комментариев. Вы можете взять его из репозитория (выполнив следующую команду - предполагается, что у вас установлен Subversion, svn):
$ svn checkout http://sitools.googlecode.com/svn/trunk/ sitools
В каталоге sitools/getcomments будет файл getcomments.pl - то, что вам нужно. Это идеальный способ, потому что я планирую дорабатывать файл, и, выполнив в каталоге sittols, созданном, как указано выше, команду
$ svn update
вы всегда будете располагать свежей версией. Как альтернатива, возьмите файл, прицепленный к этому тексту - он не будет меняться автоматически, но я постараюсь это делать достаточно регулярно.
Теперь, когда у вас есть wget и getcomments.pl (не забудьте дать последнему права на исполнение, например командой chmod +x getcomments.pl), можно приступать к копированию раздела и всех каталогов в нём. Команды ниже приведены в предположении, что getcomments.pl скопирован в каталог ~/bin (каталог bin в вашем домашнем каталоге), и что вы создали каталог ~/mirrors для хранения архивных копий раздела. Далее я также предполагаю, что имя раздела (адрес), который мы архивиурем, такое: http://zhurnal.lib.ru/p/pupkin_v_t/
1. Копируем все файлы из раздела:
$ cd ~/mirrors $ wget -np -nv -r -c \ --user-agent="Mozilla/5.0 (X11; U; Linux i686; ru; rv:1.9.0.7) Fedora/3.0.7-1.fc9 Firefox/3.0.7" \ http://zhurnal.lib.ru/p/pupkin_v_t/
В качестве строки user-agent вы можете передать идентификатор любого другого браузера, главное - чтобы такой идентификатор был похож на что-то реальное.
2. Теперь переходим в каталог, где хранятся все файлы раздела и запускаем там getcomments.pl:
$ cd ~/mirrors/zhurnal.lib.ru/p/pupkin_v_t $ ~/bin/getcomments.pl
Собственно, это всё. В вашем реальном случае подставляйте имя другого раздела и вызывайте getcomments.pl оттуда, откуда вам удобнее. Важно: сайт "Самиздата" часто перегружен и иногда может не справиться с сохранением той или иной страницы (обычно HTTP код 503). В этом случае решение простое: повторно запустите getcomments.pl - он скачает заново только отсутствующие файлы.
Правила именования комментариев таковы: если произведение хранится в файле
abc.shtml
то ленты комментариев к нему записываются в файлы с именами
abc.comment.A.C.html, где
A - номер архива (0, если это текущая лента, ещё не перешедшая в архивы)
C - номер страницы комментариев.
Если вы не владеете навыками и/или доступом к Un*x серверу, где возможно использовать упомянутое выше ПО, оставьте "заявку" на выполнение архивирования здесь или напишите мне письмом список разделов и - нужно ли сохранять их комментарии.
Нынешние ограничения скрипта сохранения комментариев и планы по его развитию:
Принимаются предложения и идеи по модернизации скрипта.
|
Новые книги авторов СИ, вышедшие из печати:
О.Болдырева "Крадуш. Чужие души"
М.Николаев "Вторжение на Землю"