にやにや製作:GoogleMapとGPSを自転車で使う

お気楽・ごくらく ( ・∀・)ニヤニヤ
     
製作 かるかる

Google Sites にRSS配信機能を付ける再び

2009年05月25日 22時36分45秒 | Google Hacks
tableの構造が変わったらしいので対応

半年ほど前「Google Sites にRSS配信機能を付ける」でGoogle SitesRSSを設置する方法を書きました。
きのう「動かない....」と記事を読んだ方からのメールがあり、修正したものを新たに公開(Google Sites Feed Ver 2.0 )しました。情報提供に感謝
Pipe


Yahoo! Pipeを弄るのは久しぶりなのでちょっとネタにしてみる

前回も今回もGoogle Sitesの更新情報からRSSを抜き出すモジュールとして
「Google Sites Recent Changes Feed Generator」を使い、その他の細々した処理を追加してPipeとして仕上げています。

今回発覚した不具合は「Google Sites Recent Changes Feed Generator」が想定していた更新情報のテーブル構造が変更されたため発生しました。
そのため修正はこの想定部分の不一致を修正することで対応しています。


[どう修正したか?]

書き換えたのは「Fetch Page」の部分だけです。
FetchPage
ここは、ページの必要な部分を取得する機能を持ちます。
「cut content from」と「to」によりHTMLの中から更新情報の書かれたtableのみをとりだして、次の「split using delimiter」で取得した内容を1つずつの記事に分割します。

具体的なコードは、元の「Google Sites Recent Changes Feed Generator」と修正したGoogle Sites Recent Changes Feed Generator copy and edit の「Fetch Page」を見比べてください。違いは20文字程度です。


「Google Sites 日本語版に対応」

次は細々した部分の修正

修正前のGoogle Sites Feed
日本語対応1

修正後のGoogle Sites Feed Ver 2.0
日本語対応2

[1.Regex]は、以前Google Sitesが英語表記で表示されていた時代
Google Sitesのページを新たに作成すると「created」、編集すると「edited」と出力されていた部分をそれぞれ「新規」「更新」とYahoo! Pipeの機能で置き換えていた所です。
Google Sitesが日本語化されたことで、この部分も変更されています。


[2.Filter]は、それぞれ「deleted」「削除」の入った記事を削除します。
RSSに削除ページの情報が配信されても意味ない(アクセス出来ない)ため、最初から無視するようにしています。

Yahoo! Pipeに公開されているPipesは修正上等ですからバシバシ修正してね。
---------------

新しくなったPipe(Google Sites Feed Ver 2.0 )の使い方

以前のGoogle Sites にRSS配信機能を付けるで紹介している方法と同じです。

URLにGoogle Sitesからの更新情報
UserNameに名前を消したいユーザー名を入力してください。
使い方

----------------
参考:

依存症・RSSリーダーに依存して視野が狭くなったと感じる:
興味のある新着項目をRSSに仕立ててRSSリーダーで読む方法

Google Sites にRSS配信機能を付ける:
タイトルの通り、今にいたってその機能が標準で無いなんて...

Google Earth API ブラウザ上でGPSログと地形図レイヤーを表示する:
GoogleマイマップにRSS配信機能