Войти в систему

Home
    - Создать дневник
    - Написать в дневник
       - Подробный режим

LJ.Rossia.org
    - Новости сайта
    - Общие настройки
    - Sitemap
    - Оплата
    - ljr-fif

Редактировать...
    - Настройки
    - Список друзей
    - Дневник
    - Картинки
    - Пароль
    - Вид дневника

Сообщества

Настроить S2

Помощь
    - Забыли пароль?
    - FAQ
    - Тех. поддержка



Пишет schegloff ([info]schegloff)
@ 2006-11-30 23:10:00

Previous Entry  Add to memories!  Tell a Friend!  Next Entry
Бэкап ненавороченных ЖЖ на python: lj_archiver
Кое-что обновил на своей страничке питоновских полезняшек. Для широкого круга пользователей интересен будет прежде всего lj_archiver.py - программка, функционального аналога которой я просто не знаю (иначе бы и писать не стал).

Что делает lj_archiver.py? Вроде бы самые простые действия: 1) определяет, в каком месяце была сделана первая запись в указанном журнале, 2) формирует общий список (индексный файл) всех неподзамочных записей журнала, 3) для каждой записи проверяет, сохранена ли она на диске с тем же количеством комментариев, которое фигурирует в индексе, и если комментариев прибыло (или запись не была сохранена), считывает запись, 4) в случае, если число комментариев превышает 50, и запись является "многотредовой" - разворачивает все комментарии, и сохраняет результат в одном файле.

В результате многократного применения lj_archiver у вас может получиться примерно такой архив ЖЖ:
[каталог с lj_archiver.py]
   [lj_archive]
      [schegloff]
         schegloff_index.html
         .... куча записей вида schegloffNNNNNN.html, где NNNNNN
              - присвоенный LJ номер очередной записи
      [galkovsky]
      [krylov]
      .... и куча других ЖЖ-юзеров, журналы которых вы хотели бы
           сохранить себе на всякий случай.


Казалось бы, ничего особенного. Однако в ситуации, когда самый популярный на сегодня LJArchive сохраняет только те журналы, к которым у вас есть пароль (т.е. сохранить чужие ЖЖ вы им не сможете), да еще и не всегда работает (на моем ЖЖ - затыкается), а самый лучший на сегодня LJSM разворачивает длинные треды только не длиннее двух страниц (в то время как у Галковского почти все записи сопровождаются 3 и более страницами комментариев) - написание собственной программы оказалось единственным способом получить полный бэкап открытых записей большого количества интересных журналов.

Ну а теперь о грустном. Программа понимает только ЖЖ с простыми стилями. Навороченные журналы, такие, например, как у [info]shurigin@lj, ей "не по зубам". Версия программы - всего 0.2, поэтому не удивляйтесь, если на каком-то журнале она выдаст вам совершеннейшую ахинею. Автор, то есть я, всегда доступен - пишите, что сумею, поправлю.

P.S. Насколько я понял, пользователей питона в ЖЖ немного. Поэтому пока особо пиарить этот архиватор не стоит. Попробую закинуть сообщение в ru_python, на предмет помощи в сборе экзешника, и если оный получится, - вот тогда нужно будет его разрекламировать. А пока жду пожеланий по улучшению программки.


(Читать комментарии)

Добавить комментарий:

Как:
( )анонимно- этот пользователь отключил возможность писать комментарии анонимно
(комментарий будет скрыт)
Identity URL: 
(комментарий будет скрыт)
имя пользователя:    
Вы должны предварительно войти в LiveJournal.com
 
E-mail для ответов: 
Вы сможете оставлять комментарии, даже если не введете e-mail.
Но вы не сможете получать уведомления об ответах на ваши комментарии!
Внимание: на указанный адрес будет выслано подтверждение.
(комментарий будет скрыт, если вы не в списке друзей)
Имя пользователя:
Пароль:
Тема:
HTML нельзя использовать в теме сообщения
Сообщение:



Обратите внимание! Этот пользователь включил опцию сохранения IP-адресов пишущих комментарии к его дневнику.