[C#/Facebook API] 抓取粉絲專頁的塗鴉牆訊息
前言
之前已介紹過[C#/Facebook API] 利用Facebook API 發文,適合前後端平台(使用者無需輸入帳密方式)
這次再來看看以程式方式如何取得粉絲專頁的塗鴉牆訊息
(※寫這篇之前,facebook的社團和粉絲專頁我自己也傻傻分不清XD,寫文章分享順便釐清觀念是好事 )
實作
1. 先到Home - Facebook 開發人員填寫App資料,步驟可參考此篇:[C#/Facebook API] 利用Facebook API 發文,適合前後端平台(使用者無需輸入帳密方式)
2. 在Facebook Developer頁面中,不用為App加入任何存取權限,只要抄下AppID和AppSecret就好,待會程式要用到
3. 打開Visual Studio 2012,透過NuGet管理員加入Facebook C# SDK,不知道怎麼加的,參考上一篇文章::[C#/Facebook API] 利用Facebook API 發文,適合前後端平台(使用者無需輸入帳密方式)
4. 人工確認要抓資料的粉絲團Fan Page ID,以twMVC為例,網址原本為:https://www.facebook.com/twmvc
把www改成「graph」變成:https://graph.facebook.com/twmvc/ 進入後
下圖紅框處的id就是Fan Page ID,記下來,待會程式會用到
	
5. 程式代碼如下:
using System;
using System.Collections.Generic;
using System.Dynamic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using Facebook;
namespace ConsoleApplicationFacebook
{
    class Program
    {
        static void Main(string[] args)
        {
            string strAppID = "";
            string strAppSecret = "";
            //twMVC的Fan Page ID
            string strFanPageID = "283092135094363";
            WebClient wc = new WebClient();
        
            string strResult = wc.DownloadString("https://graph.facebook.com/oauth/access_token?client_id=" + strAppID + "&client_secret=" + strAppSecret + "&grant_type=client_credentials");
            string strAppaccessToken = strResult.Split('=')[1];//取得Access Token
           
            Facebook.FacebookClient client = new FacebookClient(strAppaccessToken);
                   
            //回傳結果為json字串     
            string strJson = client.Get(strFanPageID + "/feed").ToString(); 
            //輸出結果
            Console.Write(strJson);
                   
            Console.ReadKey();
        }
       
    }
}
結果:
	
參考文章:
How to Get a Facebook fan page ID