2007-04-23
■ [Perl]携帯のブックマークファイル(*.VBM)をリストに変換するスクリプト 
自分用メモ。はてなの携帯ゲートウェイと携帯向けURLはPC向けに変換。後はそのまんま。
ほんとはディレクトリとか解析してFirefoxあたりのブックマーク形式に合わせて変換するのが良いんだろうけど。
BEGIN{
print '<ol>';
$title='';
$url='';
}
while (<>){
$title=$1 if(/^TITLE:(.+)$/);
if(/^URL:(.+)$/){
$url=$1;
$url=~s/http:\/\/mgw\.hatena\.ne\.jp\/\?(url=)?(.+)/$2/;
$url=~tr/+/ /;
$url=~s/%([0-9A-Fa-f][0-9A-Fa-f])/pack('H2',$1)/eg;
if($url=~m!^http://d.hatena.ne.jp!){
$url=~s/mobile\?date=//;
$url=~s/\§ion=/\//;
}
}
if(s/BEGIN:VBKM/\<li\>/){
print;$title='';
$url='';
}
if(s/END:VBKM/\<\/li\>/){
$title=$url if(!$title);
print '<a href="',$url,'" target="_blank">',$title,'</a>';
}
}
END{
print '</ol>';
}
そう言えば、ソーシャルブックマークってまるごとエクスポートする機能が無いですよね。なんでかな。
(4/25 追記) リンクテキストが1個ずれちゃってたので修正。
(10/18 追記) mgw.hatena.ne.jp の引数に(url=)?を追加。ワンライナーじゃなくてただのperlスクリプトにする。
コメント
トラックバック - http://fragments.g.hatena.ne.jp/wushi/20070423
