#!/usr/bin/perl ################################################ # 初期設定 ################################################ $item_title = "dt"; #タイトルとリンクを抜き出す要素 $item_descr = "dd"; #説明文を抜き出す要素 $host = "http://www.rakulog.com/"; #URLの設定 # 変換したいファイル名(当ファイルから相対パス) $file = "updates.html"; $file_description= "リーズナブルなアクセスログ解析【らくらくログ解析】"; $file_title= "らくらくログ解析更新情報"; open INFILE, $file; ################################################ # 初期設定ここまで ############################################### #ソースからタイトル、リンク、説明文を抽出 while(){ if(m|<${item_title}.*?>(.*?)|){ $link[++$items] = $1; $title[$items] = $2; $isItem = 1; $etc = $1; if ($etc =~ /^http:/){ $items_list .= qq( \n); }else{ $items_list .= qq( \n); } # $title[$items] = $2; # $isItem = 1; }elsif(m|<${item_descr}.*?>(.*?)| and $isItem){ $str = $1; $str =~ s/<.*?>//g; #不要なマークアップを削除 $descr[$items] = $str; $isItem = 0; #説明文は1要素だけにしておく } } #以下、RSSの構文に従って出力 print "Content-Type: application/xml\n\n"; print < $file_title $host$file $file_description $items_list EOF for $i (1..$#link){ if ($link[$i] =~ /^http:/){ print < $title[$i] $link[$i] $descr[$i] EOF }else{ print < $title[$i] $host$link[$i] $descr[$i] EOF } } print "\n";