前文
RSSを追跡するには、いわゆるアグリゲータープログラムを使用すると便利です。 Google Readerなどのオンラインアグリゲーターも現在人気を集めています。 ただし、特定のテープを1日または数日間追跡する必要があり、一時的なリンクでアグリゲーターを詰まらせる必要がない場合など、その機能が冗長である場合があります。 そのため、このようなツールが必要でした。
このツールは、次のタスクを解決することになっています。-アップデートについて通知する
-リンクをすばやくたどる機能
-データ、セッションなどを保存しない
結果は次のとおりです。
そして、どのように-以下をお読みください。
コンソール
最初に見つけたのはrsstailでした。
rsstailは、フィードの更新をリアルタイムで監視できるコンソールプログラムです。 このプログラムはその機能を100%実行しますが、判明したように、コンソールに切り替えて最新の録画の目を通して見るのは不便です。
グラフィカルアプリケーション
これに続いて、最も単純なグラフィックリーダーを見つけるために、反対側からアプローチする試みが行われました。
これらの検索の結果、最も単純なリーダーのほとんどでさえ完全なアグリゲーターであり、その機能は単一のフィードの追跡などの単純なタスクには冗長すぎることが示されました。
グラフィックスとコンソールの組み合わせ
いくつかのグラフィック通知モジュール(トレイ)をrsstailにねじ込みましょう。
試した:
-通知送信(マウスイベントが処理されないため、適切ではありません)
-gtrayicon(トリガーとして機能します:オン/オフ、および開始後にツールチップメッセージを変更することは不可能です)
-zenity(--notificationキーを使用しようとしましたが、このモードはまだ完全には実装されていません)
これで検索が終了し、単純なフィードリーダーを取得するタスクはそれほど単純ではありませんでした。
スクリプトをしましょう!
さて、ここには境界線がほとんどありません!
コード全体をコメントアウトしようとしたので、自分で整理して作り直すのは難しくありません。
メッセージアイコンをトレイに入れる
「トレイ」スクリプトの入力にデータを送信します
トレイスクリプトからのイベントでブラウザを起動します
使い方
打ち上げ rssreader.sh http://habrahabr.ru/rss 5
ここで、
habrahabr.ru / rssはフィードのアドレス、5は起動直後にリーダーに
送られる最近のエントリの数です。 数値が指定されていない場合、デフォルトは1です。
システムトレイ-アイコンに移動-現在のレコードに関する簡単な情報がツールチップウィンドウに表示されます
-ボタン「アクション」(通常は左)-ブラウザで現在のエントリを開きます
-「コンテキストメニュー」ボタン(通常は右)-次のエントリに移動
-エントリがなくなると、新しいエントリが表示されるまでアイコンが消えます。
いくつかのコメント
-Ubuntu 10.10 + ruby 1.8.7で検証されたスクリプト
-スクリプトを正しく機能させるには、ruby、libgtk2-ruby、rsstailをインストールする必要があります
-rsstailはデフォルトで15分ごとに更新をチェックします
-ルビー1.8のfork + detachの適切な実装を見つけることができなかった(追加のライブラリをインストールせずに)ので、ダーティトリックを使用し、「bash」と「&disown」を使用してブラウザープロセスをリーダーから切り離さなければなりませんでした。
ruby 1.9では、これを行う必要はありませんが、まだ主流ではありません。
あとがき
単純なRSSリーダーのスクリプトは、何らかの理由でメインリーダーにフィードを追加したくないユーザーだけでなく、テストサイトでRSSリーダーをテストするWeb開発者や、スクリプトエンジンの機能のデモンストレーションにも役立ちます。 反対側でプレイして、RSSではなく、たとえば、nagtailを使用してNagiosからのメッセージを送信することもできます。