genfeed - 汎用 RSS ジェネレータ
2004-05-11-1: [Code]
http://blog.bulknews.net/cookbook/blosxom/rss/genfeed.html
非常に便利
このままだと title および description で日本語が通らなかったので,定義ファイルを
EUC-JP で書くとして,サブルーチン load_site を以下のように修正.
要は,euc-jp に変換してあげているだけ.
sub load_site {
my($dir, $file) = @_;
my $fh = FileHandle->new("$dir/$file") or die "$dir/$file: $!";
my %param;
while (<$fh>) {
chomp;
last if /^$/;
/^(\S+): (.*)$/ and $param{$1} = decode("euc-jp", $2);
}
$param{match} = [ split / /, $param{match} ];
$param{pattern} = decode("euc-jp", do { local $/; <$fh> });
$param{filename} = $file;
return \%param;
}
- 帝国データバンクの倒産情報を取得する場合の定義ファイル
title: 帝国データバンク倒産情報
link: http://www.tdb.co.jp/
crawl: http://www.tdb.co.jp/tosan/main.html
description: 帝国データバンク倒産情報
match: link title
<p><a href=(syosai/\d+?\.html)>(.*?)</a>
- やじうま Watch の場合
title: やじうま Watch
link: http://internet.watch.impress.co.jp/
crawl: http://internet.watch.impress.co.jp/static/yajiuma/
description: やじうま Watch
match: title
<P><B>■ (.*?)</B>
- hard で loxse な 日々 さんのところの場合.
title: hard で loxse な 日々
link: http://papalagi.org/diary/
description: hard で loxse な 日々
match: title
■(.*?)<br>
参考までに以下の方法もかなり使える.
- NDO::Weblog: Template::Extract + XML::RSS でRSS 生成
http://naoya.dyndns.org/~naoya/mt/archives/000833.html