2013年5月6日月曜日

Twitter のフィードを取得する - TwitterGoodRSS または Twilog に乗り換えた

1. Twitter の API version 1 でフィードを取得できなくなる

SnapCrab_No-0851これまで Twitter のフィードを取得するには、以下のように API を利用していた。

How to find twitter RSS feed URL によると、

http://api.twitter.com/1/statuses/user_timeline.rss?screen_name=accountName

例えば、Twitterサポート (@TwitterHelpJP) のフィードを取得するには、

この方法は API version 1 に基づいている。

残念ながら、この API version 1 は使えなくなる。

 

2. API version 1 の代替サービス

API version 1 を用いたフィードの取得の代替方法にはいくつかある。

a. TwitterGoodRSS

SnapCrab_No-0852TwitterGoodRSS サービスは、Twitter API 1.1 に対応している。

気に入っている点は、画像をインライン展開してくれること。大きな画像で表示してくれるので見やすい。

Twitterの(公式よりまともな)RSSを生成するサービス TwitterGoodRSS をつくったよ! - yayuguのにっき によると、

URL、#ハッシュタグ、@リプライに対応。さらに公式の画像サービスpic.twitter.comの画像をインライン展開できます。

さらに、リストからRSSを生成する機能もつけました。

2013/03/05 追記: Twitter API 1.1に対応しました

利用するには、

  1. http://twittergoodrss.herokuapp.com/ に登録。
  2. Twitter で「連携アプリを認証」する。
  3. 提示されるブックマークレット「TwitterGoodRSS 」を登録。

これで、フィードリーダーに登録したいユーザーの Twitter ページで、ブックマークレットをクリックすると、フィードが表示される。

このサービスが一番使いやすそうだ。

 

b. Twilog

SnapCrab_No-0853 Twilog は1日単位でツイートをまとめて表示してくれる。フィードの配信もしている。

ただし、登録ユーザ以外のフィードは配信してないようだ。(昔はしてたような気がするけれど。)

 

c. Twitter RSS

ツイッターの更新情報をRSSで受け取れる『Twitter RSS』 | 100SHIKI

Twitter RSSを使えば、気になる人のつぶやきを、フォローせずにチェックすることができますな。

なんらかの理由でフォローをしたくない、もしくはRSSリーダーで見たい、という人におすすめだろう。

Twitter RSS で配信されるフィードを確認したところ、画像の展開は行われなかった。表示が見にくい。

 

d. Topsy

SnapCrab_No-0854 Topsy を利用していたこともあるが、最近、配信されなくなってしまった。

 

3. API vesroin 1.1 の制約

SnapCrab_No-0855API version 1 は、後少しで使えなくなる。次期バージョンである API versoin 1.1 が控えているが、使いづらいらしい。理由は RSS を返さないことと、「認証」を必要とすること。

本の虫: Twitter API 1.1により、Twitterは終了する によると、

Twitter API Version 1.1の登場により、Version 1はdeprecatedとなった。1.1では、RSSがサポートされていない。これでTwitterは完全に終了した。終わりの始まりだ。

API v1 Retirement Date Extended to June 11, 2013 | Twitter Developers によると、

We're extending the API v1 retirement date from May 7, 2013 to June 11, 2013, in order to accommodate additional blackout testing.

Twitter APIと開発者規約変更のインパクトまとめ:結局、Twitter API 1.1で何が変わる? 5つのポイント - @IT によると、

多くのAPIはエンドポイントURLが変わるだけですが、一部廃止・変更もあるので、注意が必要です。公式ドキュメントに廃止・変更になるAPIのリストがないので、以下にまとめました。

なお、廃止対象に挙げているAPIでもAPI 1.1のエンドポイントで実際呼び出せてしまうものがいくつかありますが、ドキュメントには記載されておらず、今後呼び出せなくなる可能性がありますので使うべきではないでしょう。

また、これまで一部のAPIはOAuth認可なしで呼び出せましたが、Twitter API 1.1では全てOAuthが必須となります。

ただし、ウェブサイトに埋め込むタイムラインは認証は必要ない。

Following up on API housekeeping | Twitter Developers  によると、

It's possible you may be able to use an Embedded Timelines widget to display these tweets on your internal site as an alternative without OAuth.

Otherwise, you'll need to register an application to dev.twitter.com/apps, learn about OAuth, and use it to fetch a JSON-based feed (instead of RSS) from https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name=DeptVetAffairs -- Single-user OAuth with Examples gives some tips on how to perform these kind of requests for a use case like yours.

 

関連記事

1コメント:

Obat Herbal Jantung Koroner さんのコメント...

、提示されている情報をありがとうございました常に成功挨拶