「RSS」について

■OIS技術ブログ始めました。

第1回目はブログ開設にちなんで、ブログに密接する技術である「RSS」を取り上げてみます。

■RSSのおさらい

RSSICONRSSとは、一言でいうと「WEBサイト更新情報のデータフォーマット」です。
最初のRSSは1999年に誕生し、2002年頃からブログの広がりと共に普及してきました。いまでは技術者に限らず一般のユーザにも認知率は高く、ブログやニュースの購読に利用されている方も少なからずいると思います。
RSSは「データフォーマット」と言いましたが、「Webサイトの更新情報(フィード)」自体をRSSと呼んだり、「フィードを配信し、フィードリーダーで購読する」仕組みをRSSと呼ばれることもあります。
フィードリーダーよりRSSリーダーの言葉の方がなじみがある方が多いのではないでしょうか。
このRSSの仕組みの中で利用されているデータフォーマットはRSSだけではありません。さらにRSSも複数バージョンがあります。 現在おもに使用されているものは「RSS1.0」「RSS2.0」「Atom」の3種類あり、どのフォーマットで配信するかは各ブログやニュースサイトご とに異なっています。
ただ、多くのRSSリーダーは3種類のデータフォーマット全てに対応しているため、RSS購読時にフォーマットの違いを意識する場面はほとんどないと思います。 RSS1

■Google Reader、使っていましたか?

2013年7月1日にGoogle Readerがサービスを終了しました。
サービスを終了する理由の一つとして利用者減があるようなのですが、Googleのサービスだけにそれでもかなりの利用者がいたのではないでしょうか。私も利用していたので、どのサービスに移行しようかと考えたものです。
Google Readerを利用していた人は、既にFeedlyやlivedoor readerなどの代替サービスを見つけて使っていると思いますし、RSSで全ての記事を読むのに疲れた人はSmartNewsやGunosyなどの ニュース配信型サービスに移行した人もいるかもしれません。
確かにRSSだと新着順に表示されるので溜まってしまうと全部読むのが億劫になりますよね。言葉の認知度の高さに比べて利用者が少なかったり、Googleが撤退したりするのもこのことが原因かもしれません。
RSSをやめてニュース配信型サービスに移った人の気持ちもよく分かりますが、自分が読みたいサイトやブログの人気記事も読みたいですよね。

情報収集方式 デメリット
RSSリーダー 記事の選別が難しい。全ての記事を読むことになり、効率が悪い
ニュース配信型サービス 自分の好きなサイトやブログの更新情報が分からない

■記事に価値をもたせる

全部の新着記事を読むのは大変ですし、かといって見逃してしまった記事が重要な記事だったってことがあると困ります。そこで、重要な記事かどうかの基準をソーシャルネットワークを使ってみることにします。
つまりFacebookのいいね!数やTwitterでのつぶやき数が多い記事を、見る価値の高いページと位置づけ、ピックアップできるような機能をもたせます。
ニュース配信型のサービスだとネットで話題の記事が表示されたりしますが、それがRSSリーダーに組み込まれていると、時間がないときは人気記事だけ読むということもできるようになるのでとても便利ではないでしょうか。
当然ながら普通のRSSリーダーにはない機能なので、自作をしてみることにします。
まずシステムイメージはこんな感じです。 RSS

  1. 購読したいWEBサイトを登録しておき、定期的にサーバーから各サイトへRSSを取得します。
  2. RSSで取得した各記事について、Facebookのいいね!数や、Twitterの共有数、はてなのブックマーク数を取得します。
  3. サーバへ溜めた情報をフロントへ渡すことができるようにします。

それでは早速つくってみましょう

■サーバー準備

まずはサーバの環境構築からです。使っていないPCがあればつぶしてサーバとして利用するのも手ですが、今回は手っ取り早く、さくらVPNを使用することにします。
執筆時点では月額980円でメモリ1G、ディスク容量100Gの仮想サーバを使うことができます。
VPSのデフォルトはCent OSがインストールされているので、他のOSに変更したい場合は、VPSコントロールパネルのカスタムOSインストール画面からインストールすることができます。
http://support.sakura.ad.jp/manual/vps/mainte/osinstall_hi.html
今回は自分が使用するための簡易なシステムなのでOSをはじめシステム構成にこだわる必要はないので、軽く作れるように以下のような構成にしました。

OS CentOS
DBMS MySQL
WEBサーバー Apache
開発言語 PHP

各ミドルウェアはパッケージを使ってインストールします。

■MySQLインストール

#インストール
yum -y install mysql-server

# アカウントの設定
/etc/init.d/mysqld start
mysql -u root
>set password=password(‘パスワード’);

■PHPのインストール

#インストール
yum -y install php php-mbstring php-mysql

■Apacheのインストール

#インストール
yum -y install httpd
/etc/init.d/httpd start

Apacheのインストールが完了しました。
ブラウザでアクセスするとApacheの初期ページが表示されます。 apache
サーバの準備ができたので、次回は引き続きRSS収集アプリケーションを作ります。