新規作成 | 検索 | FrontPage | 一覧 | 更新履歴 | RSS

RSS - Rich Site Summary, RDF Site Summary

差分表示


モバゲーにはありとあらゆる出 会いが沢山詰まっています。色々な出 会いを求める事が出来る掲示板となっておりますので気軽にご利用いただけます☆http://www.frist-choice.info/
Rich Site Summary, RDF Site Summary
以下のドキュメントは公開予定でまとめかけていたものです。
しかし今では古いものになっています(2001/12月ぐらいまでのもの)。
新しいドキュメントについては作成中です。
----
[[ツール]]
----
''前書き''
-''ここでは、レンタルサーバ等でHPを作成しているような一般ユーザがRSSファイルを利用する為の方法を説明します。個人的なポータルサイトを構築したり、あるいは友達のHPや掲示板の概要を自分のHPの一部に表示するような使用を目標とします。''

-RSSとはRich Site Summaryの略で、RSS1.0以降はRDF Site Summaryとも呼ばれています。W3C勧告に沿って定型的に書かれたXMLであり、主にサイトの見出しやリンク、要約などを含むことが出来る為、サイトの紹介やヘッドライン等に用いられています。また、データベース化も容易であるため、検索や過去ログ保存形式としての活用も期待できます。
-よく使われているのはcronに以下のような記述を加え、自動的、定期的にRSSファイルを所得し、HTMLファイルに変換、生成したファイルをSSIやインラインフレームによって表示する方法です。しかしながら、このcron機能は自分でサーバを持っている人でないとほとんど使うことができない為に、レンタルサーバを使用するようなエ鵐疋罅璽兇砲箸辰討聾充妥?癖?,任呂△蠅泙擦鵝
      rss_to_html.cgi http://slashdot.org/slashdot.rdf > slashdot.html
     rss_to_html.cgi http://www.xml.com/xml/news.rdf > xmlnews.html
-そこで、ここでは多くの有料レンタルサーバ、あるいは一部の無料レンタルサーバ(XREA、SkipUp、virtualave、hypermart、etc.)で、RSSファイルを利用する為の簡単な方法を説明します。


''お勧めCGI''
-XOOPS、phpNukeといったCMS(コンテンツマネージメントシステム)
これらには、RSSファイルを表示するためのモジュールが標準で備わっています。ここではPerlを中心に説明していますので、サーバにインストールされているモジュールに依存しますが、これは PHPで作られているので、そういったことやキャッシュを気にしなくても使えます。
-WalWiki http://digit.que.ne.jp/work/?WalWiki
WalwikiのWikiantennaという機能を使うと簡単にRSSを使ったヘッドラインが表示できます。
表示例:http://nogdnik.s13.xrea.com/x/wiki.cgi?Antenna

''必要なモジュール''
-LWP::Simple または LWP::UserAgent(IO::Socket)
無料レンタルサーバであれば、XREAやVirtualave(hypermart) 、トクトクなどで使用できます。
cf.LWPは標準モジュールではないが、簡便な為、個人的にはLWP::Simpleを用いることが多い。もちろんIO::Socketで代用する事も可能。

''あると便利なモジュール''
-HTML::TokeParser(HTML::Parser)
cf.おそらくどちらもインストールされている事が多い。RSSファイル生成時に特定タグ間を取り出したりすることが多い為、どちらかというとHTML::TokeParserのほうが使いやすい。

-XML::RSS(XML::Parser)
''この有無が最も問題となる。他モジュールはインストールされている事が多い。''
cf.XML::RSSとはRSSファイルを読み書き(パース)することに主眼を置いたモジュール。XML::ParserはXMLファイル全般を対象としているのに対し、XML::RSSはRSSに特化されている為、RSSファイルの読み書きにはこちらのほうが使いやすい。しかし、インストールされていない場合もあり、その際はXML::Parserでも代用可能。

''RSSファイルを読む-1(XML::RSSを使わない方法)''
-以下のようなコードで表示することができます。SSIで呼び出すとHPに埋め込むこともできます。コードはもっとエレガントに書く事ができるでしょうが、大きなスクリプトではないのでここではあまり気にしない事にします。(RSS0.91,0.92Shift_JISで表示)設置例:http://rss-jp.net/easyparse.cgi

 #!/usr/bin/perl

 use CGI;
 use Jcode;
 use LWP::Simple;
 
 my $query = new CGI;
 my $url = $query->param('url');
 
 if ($url eq "") {
 	&form;
 	exit;
 }

 else {
 	$body = get$url;
 	@line = split ( /\n/ , $body );

 	$strings .= qq|Content-type: text/html\n\n|;
 	$strings .= qq|<html><body>\n|;
 	foreach $ln ( @line ) {
	 	if ($ln =~ /<title>(.*?)<\/title>/ ) {
	 		$title = $1;
 		}
	 	elsif ($ln =~ /<link>(.*?)<\/link>/ ) {
	 		$link = $1;
	 	}
	 	elsif ($ln =~ /<item>/) {
		 	$strings .= qq|<a href="$link">$title<\/a><br>\n|;
		 }
	 }
 }
 $strings .= qq|</body></html>\n|;
 $strings = Jcode->new($strings)->sjis;
 print qq|$strings\n|;
 ##################
 sub form {
 print qq|Content-type: text/html\n\n|;
 print qq|<html><body>\n|;
 print qq|<form method="GET" action="$ENV{'SCRIPT_NAME'}">\n|;
 print qq|<input type="text" name="url" value="http://bulknews.net/rss/rdf.cgi?Asahi" size="60">\n|;
 print qq|<input type="submit" value="READ"></form>\n|;
 print qq|</body></html>\n|;
 }

''RSSファイルを読む-2(XML::RSSを使わない方法)''
上ではPerlを用いましたがPHPを用いる方法もあります。
http://www.hyuki.com/yukiwiki/wiki.cgi?MagpieRSS で紹介されている方法がなかなか良い様に思います。

''RSSファイルを読む-3(XML::RSSを使わない方法)''
-RSSファイルはXMLで記述されている為、そのままではあまり読み易くない上に、ブラウザによっては表示することができません。その為、RSS FeedReaderと呼ばれるものを用いられる事が多い。アプリケーションタイプのものや、Webベースのものなど多くありますが、日本語に対応しているものは少なかったりします。とりあえず読むだけであればWebKanzakiのFeedReader(http://kanzaki.com/test/rssfr?u=http://slashdot.jp/slashdot.rdf)などがありますが、自分の好みでページを作ったり、埋め込んだりするのにはRRSMonkeyというCGIをお勧めします。
-1.rssmonkey を手に入れる。(http://brandbenbrown.com/display.html/rssmonkey) 
-2.解凍する(それの説明はここではなし) 
-3.解凍してできたフォルダをとりあえず何も考えずまるごとCGIの動くフォルダにアップロードしてみる。 
-4.rssmonkey/rssmonkey.pl をエディタで開いて一番上の#!/usr/bin/perlが使っているサーバの設定と違えば変更、変更した場合は改めてアップロード。
-5.rssmonkey/rssmonkey.plを755, cache.xml を666のパーミッションにする。(または700, 600) 
-6.アップロードしたサーバの rssmonkey/ にアクセスするとindex.htmlが表示されるのでそのフォームにhttp://uber.nu/rss.xmlを入れ送信。記事が表示されたら成功(^O^) 
-7.url.cfgをエディタで開いて所得したいサイトのRSS形式のファイルのアドレスをリストに加えてアップロード。
(例:http://bulknews.net/rss/rdf.cgi?Asahi) 
-8とりあえず6と同じ事をして表示されることを確かめる。たぶん文字化けをしているはず。 
-9.rrsmonkey/front/rss/channel.html をエディタで開き、<html><title>を
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja">
<head>
<meta http-equiv="content-type" content="text/html; charset=utf-8" />
に変える。ファイルをアップロードしてもう一度8をしてみると、日本語が表示される、、はず。。
-10.好きなページに埋め込むには、インラインフレームでjavascriptのみを呼び出すhtmlファイル(charset=utf-8)を読み込むのが簡単だと思います。ページ(多くはcharset=Shift_JISなどでは?)にjavascriptを埋め込むとほとんどのブラウザでは文字化けを起こします。 

''RSSファイルを読む-4(XML::RSSを使う方法)''
-簡単なサンプルスクリプトが Bulknewsにあります http://bulknews.net/lib/columns/01_xml_rss/column.html。これをWebアプリケーション用に少し書き換えます。英語のサイトを見てもあまり面白くないので、日本語のサイトを見えるようにします。http://rss.s7.xrea.com/samplescripts/read_rss_by_bulknews.cgi、ソースはhttp://rss.s7.xrea.com/samplescripts/read_rss_by_bulknews_cgi.txtです。

''RSSファイルを書く''
 RSSファイルには0.9, 0.91, 0.92, 1.0等の規格があります。私なりの見解を書くと、やはり1.0が良いと思います。一般的には0.91が普及していたりしますのでこれでもよいのですが、ただ、インターネットエクスプローラでは生で表示しようとするとエラーが出ます。それだと不安という場合は0.92が良いと思います。拡張子に関しては、.xml, .rdf, .rss等が使われていますが個人的には.xmlが良いと思います。.rdf, .rssなどはブラウザによってはヘルパーアプリケーションを要求してくることがあるからです。


**viewer
-Googleカテゴリー( Applications > RSS )http://directory.google.com/Top/Reference/Libraries/Library_and_Information_Science/Technical_Services/Cataloguing/Metadata/Resource_Description_Framework_-_RDF/Applications/RSS/
-Voidstar > RSS FAQ > Reading RSS http://www.voidstar.com/node.php?id=142
Open Directory - Reference: Libraries: Library and Information Science: Technical Services: Cataloguing: Metadata: RDF: Applications: RSS http://dmoz.org/Reference/Libraries/Library_and_Information_Science/Technical_Services/Cataloguing/Metadata/RDF/Applications/RSS/

Webベース
-WebKanzakiのFeedReader http://kanzaki.com/test/rssfr?u=
-JavaScript RSS-Box Viewer http://publish.curry.com/rss/
-RSS-xpress - UKOLN (edit&view 登録式-静的) http://rssxpress.ukoln.ac.uk/
-Redland RSS 1.0 Viewer http://www.redland.opensource.ac.uk/rss/
-Moreover :: Flash development :: free Flash newsfeeds http://w.moreover.com/dev/flash/
-C-TICKER 〜 RSSをヘッドライン表示するJAVA・Flashによるアクセサリー 〜http://www.nk.rim.or.jp/~t_kimata/cgi/soft/c-ticker/
--c-ticker設置について http://homepage2.nifty.com/mute/00/hp/c-ticker.htm
-JERSS http://www.jayeckles.com/news/
-MyHeadlines  http://www.jmagar.com/

Flash
-flagg http://rss.granato.org/
-newsmonkey http://www.nuwance.com/newsmonkey/
-rssViewrer http://www.newfoundsystems.com/bloggin/flashrss/index.html
-Philter's RSS News Portal http://www.philterdesign.com/dev/flashFeeds/
--Philter's Flash/XML Tutorial http://www.studiowhiz.com/_tutorials/maps/63/index.php?id=63
-the 1st movement http://www.the1stmovement.com/FlashDev/blog/

Windows
-Feedreader http://www.feedreader.com/
-SharpReader http://www.hutteman.com/weblog/2003/04/06.html#000056
-Amphetadesk http://www.disobey.com/amphetadesk
-Headline Viewer http://www.headlineviewer.com/
-NewzCrawler http://www.newzcrawler.com/
-Novobot http://www.proggle.com/novobot/
-BottomFeeder http://www.cincomsmalltalk.com/BottomFeeder/
-InfoSnorkel News Aggregator http://www.blueelephantsoftware.com/
-Klipfolio http://www.serence.com/site.php?page=prod_klipfolio
-Aggie(.NET) http://bitworking.org/Aggie.html

Macintosh
-NetNewsWire Lite(OSX) http://ranchero.com/
-Amphetadesk http://www.disobey.com/amphetadesk
-SlashDock 2.3.4(OSX 日本語ローカライズ版あり) http://homepage.mac.com/stas/slashdock.html
-Plucky(MacOS8, 9 シェアウェア 日本語文字化け) http://geoffreygrosenbach.com/plucky.html
-zoe(OSX) http://guests.evectors.it/zoe/
-BottomFeeder http://www.cincomsmalltalk.com/BottomFeeder/
-MulleNewz http://www.mulle-kybernetik.com/software/MulleNewz/

JAVA
-http://webreference.com/xml/tools/ (JAVA)
-HotSheet(JAVA)(Windows 9X/NT/2000, Mac OS X, Solaris, Linux)  http://www.johnmunsch.com/projects/HotSheet/
-Friday http://members.bellatlantic.net/~vze3szvh/friday/

PocketPC
-The Furrygoat Experience http://www.furrygoat.com/

**editor
Macintosh
-mi (OSX) http://www.mimikaki.net/
**source
-create-rss.pl(生成) http://printf.net/perl/create-rss.txt
-rss2html.pl(生成)http://www.webreference.com/perl/tutorial/8/source.html
-RSS and You(生成)http://www.perl.com/pub/a/2000/01/rss.html☆ my_portal http://www.news.perl.org/my_portal/my_portal.plx
-C-ticker用(文字コード変換)http://www.nk.rim.or.jp/~t_kimata/cgi/soft/c-ticker/sample/Bulknews.txt

**validator
-W3C RDF Validation Service http://www.w3.org/RDF/Validator/
-AggregatorUserLand.com http://aggregator.userland.com/validator
-RSS Validator http://feeds.archive.org/validator/

**aggregator
-blagg http://www.oreillynet.com/~rael/lang/perl/blagg/

**resource
-Resource Description Framework (RDF)http://www.w3.org/RDF/
-RSSニュース・フィードの紹介http://www-6.ibm.com/jp/developerworks/web/010323/j_w-rss.html
-RSS -- サイト情報の要約と公開(The Web kanzaki)http://www.kanzaki.com/docs/sw/rss.html
-RSS Headline Syndication FAQ http://www.purplepages.ie/RSS/
-Voidstar RSS FAQ http://www.voidstar.com/node.php?id=129
-Ben Hammersley氏のWeblog RSS関連のニュース等をピックアップしているWeblog。RSSの利用方法などについて最新の情報が得られる。 http://rss.benhammersley.com/
-RSS Info http://www.blogspace.com/rss/tools
-RSS (RDF) 関連リンク集 http://www16.u-page.so-net.ne.jp/xb4/katsumi/os/linux/link/rss.html

-RSS 0.9 http://www.webreference.com/perl/tutorial/8/2.html
-RSS 0.91(1999年) http://www.webreference.com/perl/tutorial/8/3.html
-RSS 0.91 http://my.netscape.com/publish/formats/rss-spec-0.91.html
-RSS 0.92 http://backend.userland.com/rss092
-RSS 1.0 http://groups.yahoo.com/group/rss-dev/files/specification.html
-RSS 1.0 の和訳 http://www.net.intap.or.jp/INTAP/s-web/data/TR/1-2.html
-RSS 2.0 http://backend.userland.com/rss

**sample site
-Bulknews http://bulknews.net/ 
-Cube de Zope http://mooya.ath.cx/CubeDeZope/misc_methods/news
-ISRF http://isrf.homeip.net:8080/ISRF/NewsPortal
-gembook.jp http://www.gembook.jp/
-沖縄ITポータル http://okiit.okihawk.org/sansho_sites
-NewsHeadline http://svr04.kde.is.tsukuba.ac.jp/NewsHeadline
-H A R U P A N O B L O G http://www.harupa.net/mt/archives/rss/