アメブロをRSS経由で全文取得+画像表示

さすが芸能人ブログで有名なアメブロ、著作権保護のためという理由で、

  • RSSでは最初の100文字程度のみの配信
  • RSSリーダーでは画像を表示しない

と言うようなことが行われています。まぁ意図は理解できるのですけど、不便は不便なので改善を検討しましょう。方法は2段階。

  1. Yahoo!Pipesを利用して全文配信を行うRSSを作成する
  2. アメブロの画像をRSSリーダー上で表示できるようにする

1. Yahoo!Pipesを利用して全文配信を行うRSSを作成する

便利なツールを作ってくれている人が何人かいらっしゃいますが、例えばこれを使います。

Pipes: 【汎用】 Ameba Blog 全文配信改 12/28/09

やってくれるのは次の5つ。

  • 全文配信
  • 広告ブロック([PR]で始まるエントリを無視)
  • 投稿者を自動でauthorに
  • テーマをカテゴリーに
  • 多重改行を削除

というわけで任意のブログの全文を取得するためのRSSを作成し登録してみます。

  1. 上のURLにアクセス
  2. 「Ameba Blog Id」にブログのIDを入力(例:shinji-takehara)
  3. RSSの作成が始まるのでしばらく待ちます。
  4. 作成が完了したら「Get as RSS」のリンクをコピーしてRSSリーダーに登録
  5. 全文を取得できたらOK!

なおRSSのタイトルが「【汎用】 Ameba Blog 全文配信改 12/28/09」となってしまうのは仕方がないっぽいので、RSSリーダーに登録後、ブログのタイトルに変えておくと良いと思います。


2. アメブロの画像をRSSリーダー上で表示できるようにする

Firefoxの場合、アドオンを導入して設定することで画像を表示できるようになります。

参考

Googleリーダーでアメブロの画像が表示されないので・・・ ? たかはまんの三日坊主日記 NEXT

導入したのはこのアドオン。

RefControl :: Add-ons for Firefox

インストール後、以下の手順で設定。


  1. ツール » RefControlオプション
  2. サイトを追加
  3. サイトに「stat.ameba.jp」を入力
  4. 「阻止」を選択
  5. 「OK」を押す
  6. 「OK」を押す


これで、RSSリーダーで画像を表示してもリファラが送信されなくなるので、画像が表示できるようになります。


おお、快適!

是非お試しあれ。





蛇足…

今まで自分ではどうしていたかというと、次のようなプログラムを書いてました。

  1. RSSからHTMLを取得してパース
  2. 全文を取得
  3. 画像をローカルに保存してリファラ制限を回避
  4. RSSを構成

いや、Yahoo! Pipesでやるのが合理的なのは知っていたのですけど、HTMLパースの練習も兼ねていたので。

で、サーバ引っ越し準備の一環としてSymfony用に書き直すことになってこのコードも書き直し始めたのですけど、考慮することが多すぎてこれが存外にだるい。HTMLパースの練習は他にも出来るコードがたくさんあるので、アメブロに関してはそのコードを使うのを諦めて、もっと合理的な方法を探した結果、こんな結論に至りました。

米Yahoo!は、Flickrにしろdel.icio.usにしろサービスの継続について微妙なことが多いんだけど、Yahoo! Pipesに関しては素晴らしいプロダクトだなぁと思います。いつまで管理してくれるかはわかりませんが…