はじめに
皆さんは、毎日のルーティンとして巡回しているWebサイトはありますか?
私はあります。「日経クロステック」や「サイエンスポータル」、そしてもちろん「山梨大学 学生広報スタッフ特設サイト」も。
しかし、毎日ニュースサイトやブログを見に行くと、ふとこんなことを思いませんか?
「更新されていないのに、わざわざ見に行くのは面倒だな……」
実はそれ、RSSという技術を使えば解決できます。
今回は、情報のチェックを自動化する「RSS」と、その裏側にある技術についてご紹介します。
RSSとは
RSS(Rich Site Summary)とは、Webサイトのニュースやブログなどの更新情報を、コンピュータが扱いやすいように構造化して配信するためのフォーマット(記述形式)です。
Webサイト側は、人間が見るための「Webページ」とは別に、更新情報だけをまとめた「RSSフィード(XMLファイル)」を用意しておきます。
ユーザーは「RSSリーダー」と呼ばれるソフトウェアを使います。
このソフトがあなたの代わりに定期的にWebサイトへアクセスし、更新があるかどうかをチェックしてくれます。
RSSを使ってみよう!
まずは、RSSリーダーを入手しましょう。 アプリストアで「RSSリーダー」と検索すると様々なアプリが出てきます。
ここでは、私が作成した自作アプリを例に説明します。
次に、購読したいサイトの「RSSフィードのURL」を取得します。
今回は学生広報スタッフサイトを例にします。
フィードURLは <https://www.yamanashi.ac.jp/feature/feed>です。
これをRSSリーダーに登録すると
以下の写真のように、サイトの更新情報が自動的にリストアップされました!
これで、わざわざサイトに行かなくても「新しい記事が出たときだけ」読むことができます。便利ですね。
まとめ
RSSを使えば、情報収集の効率が劇的に上がります。ぜひ、学生広報スタッフのサイトもRSSリーダーに登録してみてください。
おまけ
ここからはCSの視点で、RSSの裏側を覗いてみましょう。
なぜRSSリーダーは記事のタイトルや要約を正確に抜き出せるのでしょうか?
データ構造を見る(XML)
RSSフィードの実体は、XML(Extensible Markup Language) という形式で書かれたテキストファイルです。 HTMLが「人間が読むための見た目」を作るのに対し、XMLは「コンピュータがデータを読み取るための構造」を記述します。
以下に、実際のフィード(一部抜粋)を示します。
構造の解説:
- <rss>: ここからRSSが始まるという宣言。
- <channel>: チャンネル(サイト全体)の情報を格納する場所。
- <item>: 個別の記事データ。このタグ1つが記事1つに対応します。
RSSリーダーは、この <item> の中にある <title>(題名)や <link>(URL)をプログラムで抜き出して表示しています。
RSSを読もう
実際にアプリで使用したKotlinのRSSパーサー(RSSフィードの内容を解読する機能)のコードを以下に示します。
上記コードでは、XmlPullParserを使用して、XMLを一行ずつ読み込みを行います。
今どのタグを読み込んでいるのかをwhenを使って分岐することで、if else文よりも効率的に分岐できます。
まとめ
実際の商用のRSSアプリはRSS1.0やAtomなどさまざまな形式に対応させるために、複雑なことをしていると思うとすごいなと感じます。
今後も、大学のことやCS分野の記事などさまざまなことを書きたいので、ぜひRSS に追加してみてくださいね。
担当:木島


