CPANモジュールのWebService::SyncSBS::D2Hを使って、Deliciousとはてブを同期させた。
I have synced two Social Bookmark Services, Delicious and Hatena by using WebService::SyncSBS::D2H.
WebService::SyncSBS::D2H – del.icio.us and hatena bookmark sync – search.cpan.org
/home/sho/src/perl/070204_delicious2hateb/d2h.pl
usestrict;
usewarnings;
useutf8;
useWebService::SyncSBS::D2H;my$sbsync=WebService::SyncSBS::D2H->new({
delicious_user=>”your-delicious-username”,
delicious_pass=>”your-delicious-password”,
hatena_user=>”your-hatena-username”,
hatena_pass=>”your-hatena-password”,
delicious_recent_num=>40,
});
$sbsync->sync;
use utf8;しておかないと、delicious側で日本語タグを付けた時にはてブ側で文字化けする。
そしてcrontabで30分毎に回す。
*/30 * * * * /usr/bin/perl /home/sho/src/perl/070204_delicious2hateb/d2h.pl
実際動かすのはすぐだったけど、cpanモジュールを入れるのに手こずった。
■WebService::SyncSBS::D2Hのインストール
XML::LibXMLとSSLとutf8のインストールが面倒。
Debian3.1だとすぐ使えたけど、VineLinux3.2だとNet::Deliciousが動かなかった。cpanからインストールしてtest通ったのに実際には動かなかったので、synopsisのrecent_postsを試してちゃんと一覧が返ってくるか確かめる必要アリ
perlのXML::LibXMLが必要としているlibxml2のバージョンよりも、Vine3.2のは古いので、Vine4から取ってきてインストールする
参考:ハヤテのごとく!プライスレス の管理人blog Vine Linux に Plagger インストール
wget http://www.ring.gr.jp/pub/linux/Vine/Vine-4.0/i386/Vine/RPMS.main/libxml2-2.6.26-0vl1.i386.rpm
wget http://www.ring.gr.jp/pub/linux/Vine/Vine-4.0/i386/Vine/RPMS.main/libxml2-devel-2.6.26-0vl1.i386.rpm
rpm -U libxml2-2.6.26-0vl1.i386.rpm libxml2-devel-2.6.26-0vl1.i386.rpm
openssl入れる
apt-get install openssl openssl-devel
cpanで
install XML::SAX::Expat
install XML::Simple
install XML::LibXML
install Net::SSLeay
install Crypt::SSLeay
force install utf8
install Encode
install WebService::SyncSBS::D2H
全部Enter連打で。utf8はperl5,8.8が必要らしいのでforceで強制インストール(時間がかかるがこれも全部Enter)
これでrecent_posts()を試して動けば、WebService::SBS::D2Hも動くはず