名前¶
XML::RSS::Aggregate - RSSの収集を行うもの
概要¶
my $rss = XML::RSS::Aggregate->new(
# XML::RSS->channel()のためのパラメータ
title => 'Aggregated Examples',
link => 'http://blog.elixus.org/',
# XML::RSS::Aggregate->aggregate()のためのパラメータ
sources => [ qw(
http://one.example.com/index.rdf
http://another.example.com/index.rdf
http://etc.example.com/index.rdf
) ],
sort_by => sub {
$_[0]->{dc}{subject} # dc:dateでソートすることをデフォルトにする
},
uniq_by => sub {
$_[0]->{title} # linkによってユニークであることをデフォルトにする
}
);
$rss->aggregate( sources => [ ... ] ); # more items
$rss->save("all.rdf");
説明¶
このモジュールはXML::RSSのサブクラスを実装し、aggregate
メソッドを 追加します。これは他のRSS配信を取り出し、オブジェクトそのものに追加します。 これは収集されたリンクに対する適切な順序付けと重複の削除を処理します。
またはコンストラクタnew
は、暗黙のうちにchannel
とaggregate
メソッドに渡される引数を取るように変更されます。
全ての基本メソッドは、このモジュールでも適用できます;詳細はXML::RSSを ご覧ください。
メソッド¶
- aggregate (sources=>\@url, sort_by=>\&func, uniq_by=>\&func)
-
このメソッドは
@url
で挙げられた全てのRSS配信を取り出し、それらの 要素を、そのオブジェクトのadd_item
に渡します。オプションの
sort_by
引数はRSS要素を並べ替えるために使う関数を指定 します;デフォルトでは{link}
属性によって同じ値を分けるようにして、 (絶対時間のスタンプに変換された){dc}{date}
属性によって ソートされます。オプションの
uniq_by
引数は重複しているRSS要素を削除するために使う 関数をしています;デフォルトでは同じ{link}
値を持っている要素を 削除します。
参考資料¶
作者¶
Autrijus Tang <autrijus@autrijus.org >
著作権(=COPYRIGHT)¶
Copyright 2002 by Autrijus Tang <autrijus@autrijus.org>.
This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.
See http://www.perl.com/perl/misc/Artistic.html
翻訳者¶
川合孝典 (GCD00051@nifty.ne.jp)