プラグイン一覧

subcription

RSSの取得,生成を行なうプラグインです。基本的にはすべてのpipelineはsubscription内のモジュールから開始されます。

config

RSSファイルを取得します。

設定項目

  • feed: リストで取得したいRSSの配布URLを指定します。
  • file: ローカルにあるファイルをRSSファイルとしてパースします。リストです。
  • max-thread: 一度に同時アクセスするサイトの数です。指定しない場合は,一度にすべてのRSSを取得しにいきます。

サブモジュール

サブモジュールを指定できます。サブモジュールを指定すると、RSSファイルだけでなく、ほかのモジュールを使用してRSSに変換できます。例えば、サブモジュールにmixidiaryを指定することで、このモジュールの中でmixidiaryも同時に扱えます。

例:

    - module: subscription.config
      config:
        feed:
          - http://www.liris.org/blog/RSS
          - http://dev.ariel-networks.com/Members/blog_update/RSS
      sub-modules:
        - module: subscription.mixidiary
          config:
            userid: mixiuserid
            password: mixipassword

custom_feed

HTMLファイルを取得してパースし,RSSに変換するプラグインです。

設定関係

  • url: 取得したいHTMLへのURLです。
  • capture: オプションです。HTML全体のうち,処理対象の部分を正規表現で抜き出します。省略するとHTML全体が処理対象になります。
  • split: captureしたものを、指定した正規表現で分割してエントリにします。指定しない場合は,captureしたものが一つのエントリになります。
  • title: splitした各エントリからtitleを抽出します。指定しない場合は,最初の40文字がタイトルとして使用されます。
  • link: 各エントリに対して,指定したリンクを埋め込みます。指定しない場合は、「#」がリンクになります。

hesearcher

HyperEstraierで全文検索して、RSSに変換するプラグインです。

必要条件

  • hyperestraier pure python implementaion (v0.10.0 or later)

設定関係

  • node: hyperestarier のノードへのURL
  • userid: hyperestraierのユーザID。省略するとadmin。
  • password: hyperestraierのパスワード。省略するとadmin.
  • phrase: 検索単語。

mail

メールサーバ(POP3)からメールを取得して,RSSにします。

設定関係

  • userid: メールサーバへログインするためのユーザID。
  • password: メールサーバのパスワード。
  • server: メールサーバの名前です。FQANでもIPアドレスでも構いません。

* author: RSSの各エントリにつけられる作成者の名前です。省略すると「habu」になります。

mixidiary

mixiの「マイミクシィ最新日記 」からデータを抜き出してRSSとして処理するためのプラグインです。

必要条件

設定関係

  • userid: mixiのユーザIDです。
  • password: mixiのパスワードです。

nullconfig

テスト用です。気にしないでください。

filter

filterでは主に取得したRSSの加工を行ないます。

adjust_date

時刻フォーマットの修正,正規化をします。日付がない初めて取得したエントリに現在時間を挿入します。以前取得したことのある日付のないエントリには,以前取得したときの時刻が挿入されます。取得日時の情報はオンメモリー,または,SQLObjectのデータベースに保存します。

設定関係

  • use_db: True/False。指定されていない、またはFalseの場合は,オンメモリでデータが保持されます。Trueの場合は、データベースを使用します。データベースを使用する場合、フィルタをした後にデータベースへの登録処理が必用になります。

* time_offset: タイムゾーンが設定されていない場合の日時表記で、時間のオフセットを数値で指定します。デフォルトでは0で、日本では9のはず。

grep

エントリの中を検索して,一致するものだけ、または、一致しないものだけを削除します。

設定項目

  • exclusive: True/Falseで指定します。Trueの場合,一致するものを削除します。Falseの場合は,一致しないものを削除します。
  • 辞書のキーで検索フィールドを指定します。値も辞書です。
  • str: 単純な文字列検索をします。
  • re: 正規表現で検索します。
  • eval: 式を指定して評価します。引き数として,各エントリがentryとして渡されます。

moblog_formatter

COREBlog2のmoblogのフォーマットに一致しないものを削除します。フォーマットはsummaryが次のようになっています。プラグインを通すと,blogに掲載する本文だけになります。

更新用パスワード

本文

設定関係

  • secretkey: 更新用パスワード

format_title

各エントリのタイトルをカスタマイズします。

設定関係

formatでフォーマットを指定します。entriesの各エントリのキーを指定できます。フィードのタイトル、リンクはそれぞれ、feed.title、feed.linkで指定できます。「エントリのタイトル - フィードのタイトル」にフォーマットしたい場合は、次のように記述します。

- module: format_title
  config:
    format: "%(title)s - %(feed.title)s"

sort

エントリの順番を並び替えます。

設定関係

  • key: 並び替えたい項目のキーを指定します。省略すると更新日順にソートされます。
  • reverse: 並び替えの順序を反転します。True、Falseで指定します。省略するとFalseになります。

delete_dup

重複したエントリを削除します。

head

エントリを範囲指定して抜き出します。

設定関係

  • start: 抜き出す最初の位置のインデックス番号です。0から始まります。
  • end: 抜き出す最後の位置のインデックス番号です。0から始まります。

Pythonの構文の entries[start:end] に対応します。

first

最初のエントリだけを抜き出します。

join

habuでは一つのパイプライン(フィルタチェーン)を並列に処理できます。並列に処理されているものを,一つのスレッドに戻すためのプラグインです。

reverse

エントリの並び順を反転します。

subs

文字列置換します。

設定関係

配列で次のデータを指定します。

  • key: エントリの対象となるフィールドを指定します。title,summaryなどです。詳細は,「プラグインの作成」を参照してください。
  • re: 検索対象の文字列を正規表現で指定します。
  • to: 置換文字列です。

rssload

RSSファイルを開いて,チェーンに流れてきたデータに追加します。

設定関係

  • path: RSSファイルへのパスを指定します。RSSファイルが取得できない,正しくない場合は何もしません。

unread

初めて取得したエントリだけにフィルタリングするためのプラグインです。取得したかどうかのデータはメモリ上に保存することもできますが,設定でpathを指定してdbmに保存することをお勧めします。

設定関係

  • use_db: True/False。指定されていない、またはFalseの場合は,オンメモリでデータが保持されます。Trueの場合は、データベースを使用します。データベースを使用する場合、フィルタをした後にデータベースへの登録処理が必用になります。

nomod

テスト用です。気にしないでください。

publisher

主にファイルやデータベース、全文検索エンジンへの登録などの外部への出力を目的としたプラグインです。出力を複数組み合わせることもできます。

rssfeeder

RSSファイルを指定したディレクトリに作成します。既にファイルが存在する場合は上書きされます。既存のRSSファイルに追加したい場合は,filter.rssloadを行なってから書き込むようにしてください。

設定関係

  • title: RSSファイルのtitleを指定します。指定しない場合は,「habu rss」になります。
  • link: RSSファイルの配信元になります。指定しない場合は,「http://localhost/」になります。
  • file: RSSファイルを保存するファイルパスです。指定しない場合は,カレントディレクトリにファイル名rssで出力します。

heupdater

各エントリをHyperEstraierの全文検索インデックスに登録するためのプラグインです。エントリのタイトルとサマリー、エントリへのURLをHyperEstraierに登録します。

必要条件

  • HyperEstraierのノードマスターが動作している必要があります。詳細は、「HyperEstraier」を参照sてください。
  • HyperEstraierのPure Python版ノードAPI バージョン0.10.0以降が必要です。詳細は、「Pure Python HyperEstraier」を参照してください。

設定関係

  • node: HyperEstraierのノードへのURLです。(例: http://localhost:1976/node/test)
  • userid: HyperEstraierのノードマスターへログインするためのユーザIDです(例: admin)
  • password: HyperEstraierのノードマスターへログインするためのパスワードです(例: admin)

dbstore

habuのデータベースにデータを保存できます。

必要条件

  • SQLObjectとpysqliteが使えること
  • globalセクションにdburiが指定されていること。

tmikimoblog

自家製blogシステムのエントリ更新用です。気にしないでください。
そのうちCOREBlog2用エントリ更新ツールも作ります。

counter

テスト用です。気にしないでください。

stdio

テスト用です。気にしないでください。