はてブのお気に入りを見つけるスクリプトを使ってみた

2009年3月28日
| コメント(0) | トラックバック(0) はてブのお気に入りを見つけるスクリプトを使ってみた

面白そうなスクリプトを見つけたので試してみた。

はてなブックマークのお気に入り候補を見つけるPerlスクリプト/楽

…が、途中でエラーになった。

Not Found
Can not parse [http://b.hatena.ne.jp/entry/rss/http://d.hatena.ne.jp/amatubu/20090322#p1].

ソースを見たら、XML::Feedでエラーになったら死ぬ事になっていたが、まあ、飛ばすだけでいいだろうと言うことで、適当に改造して使った。
結果はこんな感じ。

001 : 017 :          otsune : http://b.hatena.ne.jp/otsune/
002 : 017 :         lapis25 : http://b.hatena.ne.jp/lapis25/
003 : 015 :       typewhite : http://b.hatena.ne.jp/typewhite/
004 : 013 :        charsbar : http://b.hatena.ne.jp/charsbar/
005 : 012 :        miyagawa : http://b.hatena.ne.jp/miyagawa/
006 : 011 :           naoya : http://b.hatena.ne.jp/naoya/
007 : 011 :          hide-K : http://b.hatena.ne.jp/hide-K/
008 : 010 :       jazzanova : http://b.hatena.ne.jp/jazzanova/
009 : 009 :     bayashi_net : http://b.hatena.ne.jp/bayashi_net/
010 : 009 :        tomisima : http://b.hatena.ne.jp/tomisima/

少し新しい世界が見えた気がします。

パッチは以下のとおり。

Index: early-hatena-bookmarkers.pl
===================================================================
--- early-hatena-bookmarkers.pl    (リビジョン 31631)
+++ early-hatena-bookmarkers.pl    (作業コピー)
@@ -68,8 +68,11 @@
     my @my_bookmarks;
     for my $rss_url (@my_rss) {
 
-        my $feed = XML::Feed->parse( URI->new($rss_url) )
-                    or die XML::Feed->errstr. "\nCan not parse [$rss_url].\n";
+        my $feed;
+        unless ($feed = XML::Feed->parse( URI->new($rss_url) ) ) {
+            warn XML::Feed->errstr. "\nCan not parse [$rss_url].\n";
+            next;
+        }
 
         for my $item ($feed->entries) {
             push @my_bookmarks, 'http://b.hatena.ne.jp/entry/rss/'. $item->link;
@@ -90,8 +93,11 @@
     my %users;
     for my $url (@bookmarks) {
 
-        my $rss = XML::Feed->parse( URI->new($url) )
-                        or die XML::Feed->errstr. "\nCan not parse [$url].\n";
+        my $rss;
+        unless ( $rss = XML::Feed->parse( URI->new($url) ) ) {
+            warn XML::Feed->errstr. "\nCan not parse [$url].\n";
+            next;
+        }
 
         my $me = 0;
         for my $item ($rss->entries) {

トラックバック(0)

このブログ記事に対するトラックバックURL:

コメントする

Google検索

Last.fm

このブログ記事について

このページは、のぶりんが2009年3月28日 08:43に書いたブログ記事です。

ひとつ前のブログ記事は「二つの配列からハッシュを作成するベンチマーク」です。

次のブログ記事は「性懲りもなくModule::Setupをインストールしてみた」です。

最近のコンテンツはインデックスページで見られます。過去に書かれたものはアーカイブのページで見られます。

Creative Commons License
このブログのライセンスは クリエイティブ・コモンズライセンス.
Powered by Movable Type