Skip to content
7月 10 / rakkyoo

rubyでRSS情報を取得 (自分用のRSS reader作成に向けて)

Peepを用いて,google reader情報をターミナルから取得をとしていたのですが,

各ブログのRSS情報をrubyで取得するのもとっても簡単なのですね.
「require ‘rss’」 を試してみました.

使い方はとっても簡単で,当サイトの場合は,
「http://rakkyoo.net/?feed=rss2」がrss情報なので,この情報を取得(パース)するには,以下のようにします.

1
2
require 'rss'
rss = RSS::Parser.parse('http://rakkyoo.net/?feed=rss2')

たったこれだけです.
「items」に取得した記事が入るので,eachで1件ずつ「タイトル(.title)」,「リンク(.link)」,「説明(.description)」を表示していくには,

1
2
3
4
5
6
7
8
9
10
require 'rss'
 
filename = 'http://rakkyoo.net/?feed=rss2'
rss = RSS::Parser.parse(filename)
rss.items.each{|item|
  puts item.title
  puts item.link
  p item.description
  puts
}

こんな感じです.

結果としては,以下のような形となります.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
rakkyoo:$ ruby rss_test01.rb
 
Google Readerをターミナルでチェック(Peepを用いて)
http://rakkyoo.net/?p=973
"ターミナル上かEmacs上で作業していることが多いのですが,まめにGoogle ReaderをFeedlyからチェックし ています. feedly Feedlyは相当見やすくて,快適なのですが,ターミナル上から気軽にGo [...]"
 
Gnu Screen を使ってみる
http://rakkyoo.net/?p=961
"ターミナルを使う時は,iTerm2を使っています. iTerm2 – Mac OS Terminal Replacement 標準のterminalよりカラフルにできたりと,使い易くて気にいっています. ター [...]"
 
コマンドラインランチャー「Alfred」が相当便利
http://rakkyoo.net/?p=954
"ランチャーはコマンドラインランチャーが大好きなのですが, Windowsでは,「cl」 しおしおプログラマ~の日常 – シーエル macでは,「QuickSilver」 Quicksilver (Mac) & [...]"
 
stickyで「:」を設定(emacs skk, aquaSKK共に)
http://rakkyoo.net/?p=931
"Emacsで書き物をしている時,shiftキーを押す頻度を減らすための方法として,「sticky.el」があります.これは,Shiftキーを次の1キータッチだけ有効にするものです.「Sticky」などと先頭を大文字にして [...]"
 
ウィンドウ切り替え用ショートカットアプリ「Witch」
http://rakkyoo.net/?p=914
"ウィンドウの切り替え(Alt + tab)をするには,Witchが相当便利ですね. Macを使っているときに, 「Command + tab」でアプリケーションを切り換えることが多いのですが,同じアプリ内でのウィンドウを [...]"
 
rubyからExcelの「.xlsx」ファイルを読む
http://rakkyoo.net/?p=904
"rubyで,excel2007以降のファイルをどうしても読み込みたかったので探していたのですが,「roo」でできる みたいですね. RubyForge: roo – parse spreadsheets wit [...]"
 
Mac OS Xでw3mを使う(segmentation fault対策)
http://rakkyoo.net/?p=894
"テキストブラウザのw3mを使いたかったのですが, 「segmentation Fault」 と出てしまって,使えませんでした.そのままにしていたのですが,対処方法がちゃんとあるみたいですね. #30710 (w3m cr [...]"
 
terminalからゴミ箱に入れる
http://rakkyoo.net/?p=885
"Terminal上で,「rm」をするとゴミ箱入らずにそのまま削除されます. GUIでファイルを削除すると,ゴミ箱 に入るので,ワンクッションあるために助けられることが多々あります. macでは,各ユーザーのゴミ箱の場所は  [...]"
 
pbcopyする前に改行コードを削除(rubyワンライナーを使って)
http://rakkyoo.net/?p=862
"カレントディレクトリの場所をクリップボードにコピーすることがちょくちょくあるのですが,,, 1 $ pwd | pbcopy この時に,改行コードも一緒にクリップボードに入ります. 貼り付けた後で削除してもいいの ですが, [...]"
 
cronのログを保存
http://rakkyoo.net/?p=854
"cronの保存ログを保存したいなと思い,設定することとしました. 設定するには, 「/etc/syslog.conf」に 追記するだけです. 「/var/log/cron.log」にログを保存する場合には, 1 $ sud [...]"

とっても簡単にRSS情報を取得することができました.
種々のサイトからRSS情報を取得して,好きなように並びかえて出力させれば,自分なりのRSS Readerが作れそうです.
もうすこし作りこんで,cronで定期的に巡回させてみようかと.

[`twib` not found]

Leave a comment

CAPTCHA


This blog is kept spam free by WP-SpamFree.