Googleツールバー4 でOPACを検索
「それPla」と言われて [2]

「それPla」と言われて [1]

 8月の大図研大会のあたりから話題に出ていた

今ある図書館の新着案内からRSSを生成するスクリプトを考えている。これらをゲリラ的に提供した後で、「便利だ」ということを広め、そして必要性を訴えるのでよいのでは。

 について、ゲリラ的な戦術が適切かどうかはともかく、ツールの汎用化に向けた自分なりのアプローチとして、Plaggerを使えないかと考えるだけでとどまっていたが、ようやく手を付けてみた。
 Plaggerは、Perlモジュール群からなるツールで、

HTMLやRSSを何かしら切ったり張ったり加工して、gmailへの送信やRSSその他様々な形式で出力するツール

 と言える。「人力検索はてな」の最近の質問、「Plaggerって何ですか?」 に事例や上手な回答が出ているのでご参照ください。

 これで普通の図書館Webサイトで提供されている新着情報をRSSに変えてしまおうと言う目論見。既存のツールはありがたく使おう。
 さらにid:toshi123さんのはてなダイアリー「Muibrog」のエントリ「いまさら聞けない? 初心者向けPlagger設定覚え書き その1」が後押ししてくれた。感謝です。とても参考になりました。

 処理の流れは以下の通り。

  1. 新着情報ページ上の書名、リンクなどを抽出
  2. リンク先の詳細情報を取得、HTMLタグ削除
  3. これらの情報を一件1itemのRSSとして出力

 まずは某図書館の新着図書案内ページのソースを解析。テーブルタグを使い、書名等はセルで区切られて入力されている。そこで、「いまさら聞けない? 初心者向けPlagger設定覚え書き その2」で紹介されていた CustomFeed::Config を使い、正規表現を駆使して書名、リンク先などを抽出するyamlを記述。
 
 次に本体となる config.yaml で以下の処理を行うよう設定。

  1. 指定したURLのファイルを取得、先の設定の通りフィルタして書名等を抽出
  2. 重複データを削除
  3. リンク先のファイルを取得(この場合資料の詳細表示)
  4. 取得したファイルからHTMLタグを除去
  5. RSS2.0でファイルに出力

 そして実行。 plagger -c ./config.yaml

 …おお、ちゃんとRSS2.0で出力してくれた。すごいぞPlagger。
 当座の問題点は、

  • RSSフィード自体のtitle、linkを設定できない
  • 取得した資料の詳細表示が、単にHTMLタグを削っただけで見難いので、整形して出力したい

 というところ。とりあえずPlaggerでいけそうなことが分かったので、この線で進みたい。
実際のyamlファイルは…もうちょっと心が落ち着いたら公開します。今しばらくお待ちを。願わくば、腕に覚えのあるシステムライブラリアン各位の協力を仰ぎたいところ。


 後半に入った自称「On the road 2006 "Road to the OPAC2.0"」。好評だったのかどうなのか、図書館総合展での公演のほか、追加公演が決定しました。11月末に名古屋です。詳細は追って広報されると思います。

コメント

とし

はじめまして。
後押しすることができてとても嬉しいです。
私も初心者なので変なところがあるかも知れませんが、参考になれば幸いです。
こんなのはどうやってするの?みたいなことがありましたらコメント欄にでも書き込んでみてください。ネタにさせていただきます(笑)

この記事へのコメントは終了しました。