FacebookページのRSSの取得について

6月28日に、月曜日からの仕事の準備のため、子供たちが寝静まった後に少し作業(個人事業者は辛い…)をしていたところ、Facebook ページのRSSが取得されていないことに気が付きました。


Facebookが、6月23日をもって「LikeBox」を廃止し「Page Plugin」に変更することは把握していましたが、Facebook Platform Changelogを確認したところ、Page RSS Feed endpointが廃止になっていることを、23日から5日も経過した28日に知りました。


いくつのクライアントさんではFacekbookページを運営し、Facebookページの更新内容を、WEBサイト上に「お知らせ」として表示していたため、RSS/Atom(以下、RSS)が取得されないと、ブログシステムへの移行などを検討せねばならず、すこしばかり困った状況でした。


Facebook Platform Changelog」では、「これからは "/v2.3/{page_id}/feed" を使えばいいよ!」と書かれておりましたが、ノンプログラマの自分にとっては魔法の言葉にしか見えず「なるほど!分からん!」状態でしたが、状況の把握のため、今後のため、ブログにメモを残しておきます。


以前は、

https://www.facebook.com/feeds/page.php?format=atom10&id=[FacebookページID]


で、FacebookページのRSSが取得できていましたが、6月23日以降は、FacebookページのRSSを取得するには「Facebook Graph API」を使用し、また「Access Token」が必要な仕様に変わりました。


そこでまず、Facebookにログインした状態で、「Facebook Developers( https://developers.facebook.com/ )」にアクセスし、「My Apps」から「Register as a Developer」をクリックし、Facebook開発者として登録します。


Facebook開発者の登録後、「My Apps」から「Add a New App」をクリックし、「ウェブサイト」を選択し、表示されたテキストボックスにアプリ名を入力します。アプリ名は日本語の利用が可能です。


f:id:hero3050g:20150629115733p:plain


「Create a New App ID」をクリックし、カテゴリを選択の上、「Create App ID」をクリックします。


「Create App ID」をクリック後、「Setup SDK」ページが表示され、ページ下部の「Tell us about your website」に、FacebookページのRSSを表示したい、WEBサイトのドメインを「http://www.example.com/」との形式で入力し、「Next」ボタンをクリックします。


「Tools & Support」から「Access Token Tool」をクリックし、「App Token(アクセストークン)」に表示された英数字の羅列をコピーします。


本来、アクセストークンには使用期限があり、最短で1時間、最長で60日と設定され、また、プログラムなどによって、自動的にアクセストークンの使用期限の延長は行えない仕様になっているようですが、現時点(2015年6月29日)では「App Token」には、使用期限は設定されておらず、RSSの取得のみで、外部プログラムから、Facebookページへの投稿などは行わないのであれば「App Token」のみの利用で問題ないと思います。


アクセストークンの取得後、

https://graph.facebook.com/[FacebookページID]/feed?access_token=[アクセストークン]


で、FacebookページのRSSの取得できますが、取得できるデータは、JSON形式のため、以前のように、Google Feed APIを使用し、データの整形は行えませんが、「$.getJSON」をごちょごちょして、以前のように表示することは可能です。


Facebookページは、スマートフォンからでも比較的容易に更新できるため、PCの操作が得意ではない方でも、安心して、WEBサイトの更新が行える利点がありますが、Facebookは仕様の変更が多く、また、プログラムが得意ではない自分にとっては「ウェブログサービスの方がいいかも」と感じた事例になりました。


また、僕はプログラムが得意ではないため、上記の内容には致命的な認識不足、誤りがある恐れがあります。そのため、上記の内容を参考にする際はくれぐれもご注意いただきますようお願い致します。