Раз уж я переехал на standalone из ЖЖ с переносом записей, то надо как-то определиться с форматом блога. Пусть это будет что-то около веб разработок с минимум lifestyle. Дневник в ЖЖ я благополучно прикончил, он как бы изжил сам себя. Кстати, выяснилось, что удалить все записи в ЖЖ имея бесплатный аккаунт не так то просто, а учитывая, что у меня их там накопилось около двух тысяч… Варианта было три - написать самому, удалять по одной записи ручками, или поискать информацию по этому поводу. Вроде как некоторые ЖЖ клиенты могут проделывать подобное, но поскольку я основное время провожу под Линуксом, мне они не светят. В итоге был найден Perl скрипт LJdel - вот он (быстро, полезно и познавательно). К сожалению не могу сейчас быстро разыскать блог автора, но поскольку автор указан в исходнике, то думаю, что это не страшно. Требуется установить предварительно из PECL LJ::Simple. Заодно потестирую подсветку кода в этом посте.
-
-
#!/usr/bin/perl
-
# This code is provided under PUBLIC DOMAIN
-
# (c) Dan Kruchinin 2007
-
# this is a simple script that deletes all your lj entries
-
-
use strict;
-
use LJ::Simple;
-
use POSIX (strftime);
-
-
# ATTENTION!!! please change the folloeing information
-
# to properly script working
-
use constant LJ_USER => "xxx"; # your username on lj-based site
-
use constant LJ_PASSWD => "xxx"; # your password on lj-based site
-
use constant LJ_SITE => ; # NOTE: if you want delete all entries from
-
# accaunt on the livejournal.com just leave
-
# this string without any changes
-
# but if it is other lj-based site replace
-
# undef by this site web-address
-
-
my (%entries, $subj, $time, @opt) = (, , , );
-
my $lj = new LJ::Simple( # make connection
-
{ user => LJ_USER,
-
pass => LJ_PASSWD,
-
site => }
-
);
-
-
$opt[0] = 50;
-
$opt[1] = ;
-
-
( $lj) or "$0: Failed to login! ($LJ::Simple::error)\n";
-
-
# get last 50(maximum number) entries per cycle
-
while($lj->GetEntries(\%entries, , "lastn", @opt) > 0) {
-
last if(%entries == ); # leave main cycle if there no any entries
-
while(my ($entry_id, $entry_hash) = (%entries)) {
-
# so, here you can add any entry handler
-
# in my case I just want do kill em all,
-
# so, if you don’t want to remove some entries
-
# or just want to copy some of them
-
# you can create array with entry ids that you want to save
-
# and copare current entry with all entries in this array.
-
$subj = $lj->GetSubject($entry_hash);
-
$time = $lj->GetDate($entry_hash);
-
"Delete entry with id $entry_id and subject\n\t\"$subj\"\n"; # display id and sublect
-
# display subkect (yep this thing is very important information =))
-
("\toriginally dated: %s\n", strftime("%Y-%m-%d %H:%M:%S", ($time)));
-
# kill em, kill!
-
$lj->DeleteEntry($entry_id) or "$0: Can’t remove entry! ($LJ::Simple::error)\n";
-
"\t-> [DONE]\n\n";
-
$subj = $time = ;
-
}
-
-
%entries = ;
-
}
-
-
0;
-
Нет комментариев