Python 快速學習筆記本-4 Facebook 粉絲團 留言 讀取
這一篇主要是工作上的需求,目前有很多公司都是用臉書粉絲團在辦活動,所以對粉絲團的留言都希望能夠做自動化的處理,為了開發相關的程式,首先就是要了解 Facebook for developer.
先到 Facebook for developer 上我的應用程式去建立一新的應用程式,並為新的應用程式取名,接著可以去用 臉書 圖形 API 測試工具:
- 一開始可以先去產生存取權杖(Generate access token), 同時設定權限:
權限pages_show_listgroups_access_member_infopages_manage_metadatapages_manage_adspublic_profile
- 找出臉書粉絲專頁的 ID , 首先要找出臉書粉絲專頁的URL,如果不知道如何找可以參照這一篇: 如何取得我的個人或粉絲及商務專頁網址? ,有了臉書粉絲專頁的URL 後就可以找到粉絲專頁的ID Find Your Facebook ID。
如果Token 已經產生,也知道粉絲專頁的URL也可用import jsonimport facebooktoken = 'xxxxxxxxxxxxxx' #貼上臉書 圖形 上的權杖graph = facebook.GraphAPI(access_token = token)info = graph.get_object('http://www.facebook.com/xxxxxxxxxx', field = 'id')print(info)
結果 :
{'name': 'xxxxxxxxxxx', 'id': '9999999999'}
- 接下來可以在 "圖形 API 測試工具" 輸入 "你的臉書ID"?fields=posts.limit(10), 按 "提交" 就會看到此粉絲專頁下前10個貼文。我錄下動作供參考 圖形 API 測試工具 - Facebook for Developers :用 ID 去 讀取貼文
- 從印出的結果中,可以看到粉絲專頁上每一則貼文的ID,如下:
"posts": {"data": [{"created_time": "2020-05-30T02:50:05+0000","message": "這應該是喵星人的陰謀","id": "854912077898216_3121610587895569"},{"created_time": "2020-05-29T06:25:14+0000","message": "展覽資訊","id": "854912077898216_3119533854769909"},
ID 內容 底線前為粉絲專頁的ID,底線後為該貼文的ID。
取得的URL直接用圖形 API 測試工具,也可以得到該貼文的ID如:
{
"id": "https://www.facebook.com/ezworker2015/posts/3109661235757061"
}
- 有了粉絲專頁的ID+貼文的ID 就可以將ID 輸入 圖形 API 測試工具:
FanPageID_PostID?fields=comments
結果如下:(回傳的 Datatype 應該是 Python 的 dictionary)
{"comments": {"data": [{"created_time": "2020-05-25T05:25:31+0000","message": "請問服用補充安優骨?","id": "31096xxxx5757061_3109xxxx35738021"}],"paging": {"cursors": {"before": "MjAz","after": "MTc5"},"next": "https://graph.facebook.com/v7.0/854917677xxx216_31096xxx35757061/comments?access_token=<access token sanitized>xxxxxxxxxxxxx"}},"id": "8549xxxx7898216_310xxxx335757061"}
也可以用 :
Python:graph = facebook.GraphAPI(access_token = token)infos = graph.get_object('85491xxxx898216_3109xxxx35757061', fields = 'comments')print(infos)
待續...........................
歡迎留言,共同切磋!
您好,最近我在研究抓貼文留言的使用者名稱,但是一直抓不到,不知道這個部分您有研究嗎?
回覆刪除最近好像又有改安全設定,我也還在試
刪除