[Python教學] Facebook圖形API測試工具,取得粉絲頁按讚數
文章推薦指數: 80 %
Access token:請由Facebook API圖形API測試工具. 當然,其他程式語言如C#、Node.js 甚至App Inventor等都可以做到本範例的效果,您可以在 ...
Skiptocontent
作者/攝影
曾吉弘
時間
2小時
成本
無
難度
****
材料表
個人電腦
Facebook帳號
本文要介紹如何使用Facebook的圖形API測試工具(GraphAPIexplorer)取得粉絲頁的相關資料,最常見的應用就是讚數。
如果喜歡的話,還可以結合Arduino作出有趣的互動裝置,例如以下:
(註:本影片僅為示意,並非使用Python來取得資料)
Facebook開發者平台與圖形API測試工具頁面
請到Facebook開發者網站(請用您原本的Facebook帳號登入即可),在網頁最下面找到圖形API測試工具(GraphAPIexplorer)。
您可以在此查詢您個人的所有資料,查詢結果會以json格式回傳,下圖是阿吉老師的FacebookId與使用者姓名的查詢結果:
(圖形API語法詳細文件請點我)
請點選畫面右上角的下拉式選單,找到您所要查找的粉絲專頁(您得是該專頁的管理員才行),例如本範例的CAVE教育團隊。
下圖查詢了四個項目:id、name、fan_count(讚數)與link。
您當然可以查詢其他欄位,只要有輸入資料都可以查得到。
以往的做法是比較寬鬆的,不需要AccessToken,且只需要把粉絲頁超連結www改為graph即可,但現在已經都需要從圖形API測試工具取得才行,這也暗示了您需得是該粉絲頁的管理員才可查找。
並且AccessToken會在兩小時之內過期。
網路上介紹如何取得永久有效的AccessToken,但不在本篇討論範圍之內。
Python程式碼
最後請看一下本範例的Python程式碼,
阿吉碎碎念:Facebook相關的API改動非常快,例如2.6之前,fan_count原本是叫做likes。
其他雲服務也會常常改,但真的Facebook最愛改就是了,可能和創辦人個性有關吧~
本範例的關鍵URL由以下四個項目組成:
facebookapi網址:https://graph.facebook.com/v2.10/
粉絲頁id:148248725246010(CAVEr教育團隊)
要查找的欄位:?fields=id,name,fan_count,link&access_token=
Accesstoken:請由FacebookAPI圖形API測試工具
當然,其他程式語言如C#、Node.js甚至AppInventor等都可以做到本範例的效果,您可以在取得資料之後直接使用瀏覽器來測試,只要看到以下畫面就是ok的:
https://graph.facebook.com/v2.10/148248725246010?fields=id,name,fan_count,link&access_token=XXX
FBAPI2.10
#22是您要查詢的Facebook帳號或粉絲專頁ID。
#23則是AccessToken
#04是自訂的函式來處理FacebookAPI回傳的JSON格式結果。
#24~26則是依序顯示出我們所要查詢的欄位,執行畫面如下圖:
importurllib2
importjson
defget_page_data(page_id,access_token):
api_endpoint="https://graph.facebook.com/v2.10/"
fb_graph_url=api_endpoint+page_id+"?fields=id,name,fan_count,link&access_token="+access_token
try:
api_request=urllib2.Request(fb_graph_url)
api_response=urllib2.urlopen(api_request)
try:
returnjson.loads(api_response.read())
except(ValueError,KeyError,TypeError):
return"JSONerror"
exceptIOError,e:
ifhasattr(e,'code'):
returne.code
elifhasattr(e,'reason'):
returne.reason
page_id="148248725246010"#usernameorid
token="XXXXX"#AccessToken
page_data=get_page_data(page_id,token)
print"PageName:"+page_data['name']
print"Likes:"+str(page_data['fan_count'])
print"Link:"+page_data['link']
相關文章:
[物聯網分享教學]2017版ArduinoYun自動發布Facebook個人動態–使用Temboo
[IBMWatsonbot]Facebook粉絲頁聊天機器人
RelatedPosts
[RaspberryPi]Python最近RaspberryPi...
pythononEV3機器人-基礎python撰寫本篇暫時不會連線EV3,想學習...
用python取得Facebook粉絲頁面讚數本範例使用python3中...
pythononEV3機器人-使用python控制EV3馬達這次分享的是由ev3主機的py...
CAVEDU小編
[微笑偵測器]微軟辨識服務搭配Arduino
[Scratch1.4]從零開始遊戲製作-足球篇
2thoughtson“[Python教學]Facebook圖形API測試工具,取得粉絲頁按讚數”
Anthonysays:
Hi,我最近在嘗試使用graphapi抓粉專的頁面文章還有底下回覆
發現文章可以抓得到但回覆抓不到耶,想虛心請教您那邊是否有遇到同樣情況
文章url:https://graph.facebook.com//feed?access_token==>成功
回覆url:https://graph.facebook.com//comments?access_token==>失敗
失敗碼:(#100)PagesPublicContentAccessrequireseitherappsecretprooforanapptoken
2020-06-11at10:18下午
回覆
CAVEDU阿吉-雜工says:
取得access_token是第一步,但我們原本的範例是api2.x3.x現在都更新到6.0了,只能說跟著這個跑也是很累。
2020-11-30at9:53上午
回覆
發佈留言取消回覆發佈留言必須填寫的電子郵件地址不會公開。
必填欄位標示為*留言顯示名稱*
電子郵件地址*
個人網站網址
Δ
近期文章
RasbperryPi結合LINEmessagingAPI–發發愛聊天
LinkIt™7697空氣品質偵測並上傳Google表單(空氣盒子2.0)
【Arduino首次接觸就上手】快速執行AI圖像辨識
【tinyML系列專題】使用wioterminal與氣體感測器收集咖啡氣味資料!
組裝!!AI嗅覺實驗套件
瀏覽分類文章
【推坑】開箱與評測(66)
AI人工智慧(150)
AIoT(9)
Google(5)
Intel系列(31)
Keras(2)
NVIDIA(63)
OpenVINO(4)
OpenCV(11)
RKCar(19)
TensorFlow(25)
強化學習(4)
機器學習(16)
無人車(5)
自動化資料擴增(4)
邊緣運算(8)
CAVEDU書籍資訊(66)
CAVEDU課程/研習(462)
兒童課程(85)
技術課程(47)
Cloud雲端服務(105)
Amazon(2)
DeltaMbed(1)
IBMBluemix(4)
MCS(15)
MicrosoftAzure(13)
Qnap(3)
rephone(3)
Event活動(529)
CAVEDUNews(37)
CAVEDU展出中(22)
放課後FunSchool(5)
主題分享/專案研究(342)
123DCircuits(11)
Arduino首次接觸就上手(4)
BOSON(24)
DesignSparkMechanical(27)
DesignSparkPCB(4)
DIY敲打動手做(15)
IOT物聯網(12)
Mouser-MultisimBlue(10)
數位製造/設備(16)
樂高機器人(125)
樂高造型積木/SPM(72)
機器人專題實作計畫(17)
機械手臂(5)
酸鹼滴定實驗(1)
控制板/系列相關(514)
86duino(5)
Arduino嵌入式開發板(239)
ASUSTinker(8)
Intel系列:Edison/101/Joule/Galileo(10)
lattepanda拿鐵熊貓(21)
LinkIt聯發科家族(86)
microbit(34)
RaspberryPi單板電腦(120)
Robotshield(13)
電子電路/感測器(7)
科技觀點/快訊/報導(633)
CAVEDU報導(128)
Maker/創客(32)
轉載(13)
程式語言&IDE(610)
Android(67)
AppInventor–圖形化Android(201)
BlocklyDuino(8)
LabVIEW圖形化程式開發(134)
leJOS/Java(18)
MATLAB程式設計(7)
MSRDS程式設計(38)
NXC/RobotC/C++forLegorobot(85)
Processing數位互動創作(17)
Python(20)
Scratch(32)
阿吉碎碎念(168)
CAVEDU入口網站
研習活動
系列叢書
實驗室
教學投影片
Youtube
FB粉絲團
談機器人教育如何養成
機器人王國商城
APPInventor中文學習網
我想與CAVEDU合作
連絡我們
WooCommercenotFound
Newsletter
延伸文章資訊
- 1Day 8 : Facebook Graph API 實作 - iT 邦幫忙- iThome
那$data到底是什麼,你可以var_dump看,或是別忘了,有一個非常好用的Graph API Exploer:. 使用方法很簡單,先按GET ACCESS TOKEN 按鈕,會跳出一個權限的...
- 2即時文章API
此API 允許您直接從內容管理系統建立、發佈、更新和刪除即時文章。在Facebook 上也會即時以即時文章格式執行自動化發佈。 只有在網站上也可公開瀏覽的新動態,才 ...
- 3Facebook API 教學:客製化登入流程並以粉絲頁互動應用為例
- 4EP1. 我要怎麼申請Facebook API?好像很難又好像很簡單欸!
`存取權杖偵錯工具` 如果你希望延長Token 的授權期限、檢查Token 所擁有的權限時,也會時常用到。 [Facebook 開發人員文件| Facebook API、SDK、指南]( ...
- 5[Facebook API] Facebook Login 並取得用戶基本資料 - 點部落
奇怪的是我使用Javascript SDK,明明它會自動處理access_token(存取權杖),結果錯誤訊息還叫我傳遞access_token (黑人問號?? 網頁版「Facebook 登入」...