2017-05-11 69 views
0

所以我試圖使用Facebook Python API來拉我們的訂婚數據(喜歡,股票等,基本上所有的東西在Facebook網站上的「洞察」標籤下)。Python Facebook API - 洞察/參與數據?

我已經設法通過API獲得連接,並獲得訪問令牌工作正常,沒有問題。

絕對不知道如何開始拉取數據(無論是在帖子還是頁面級別),但通過文檔和一些谷歌搜索,沒有運氣。有命令嗎?這是一個不完整的API,我最好試着制定一種不同的語言?

任何幫助非常appriciated!

回答

0

我不確定您鏈接到的Facebook Python API的狀態,以及Python SDK的facebook標記顯示的狀態(不贊成使用)還是(非官方)。但是,facebook-graph-api標記頁面狀態:

Facebook Graph API由Facebook平臺提供,用於與Facebook的社交圖表進行交互。

應保持一致,可靠,先進的日期,因爲的源泉,而不是一些第三方開發者。 The Graph API目前是v2.9並且有很多最新的文檔,並且Graph API Explorer對練習查詢很有用。

下面是一個簡單的Python腳本,可以從圖形API獲取JSON數據。這只是在Python2.x中,但提出了基本的想法,獲取用戶名,喜歡,鏈接等。有many other fields and endpoints你可以包括和指向,我只測試id,name,likeslink(我不能找到shares(我甚至不知道那會是什麼,我不是一個Facebook用戶),但我相信你可以弄明白)。

只需要一個access token並修改爲您使用的任何版本的Python。

import urllib2 
import json 

page_id = "Facebook" # any username or id 
access_token = '<your_access_token>' 

page_data = None 

api_endpoint = "https://graph.facebook.com/" 
fb_graph_url = api_endpoint+page_id+"?fields=id,name,likes,link&access_token="+access_token 
try: 
    api_request = urllib2.Request(fb_graph_url) 
    api_response = urllib2.urlopen(api_request) 

    try: 
     page_data = json.loads(api_response.read()) 
    except (ValueError, KeyError, TypeError): 
     page_data = "JSON error" 

except IOError, e: 
    if hasattr(e, 'code'): 
     page_data = e.code 
    elif hasattr(e, 'reason'): 
     page_data = e.reason 

# entire JSON response 
print page_data # {u'link': u'https://www.facebook.com/facebook/', u'likes': 187433459, u'id': u'20531316728', u'name': u'Facebook'} 

print "Page Name: " + page_data['name'] # Facebook 
print "Likes: " + str(page_data['likes']) # 187433459 
print "Link: " + page_data['link']  # https://www.facebook.com/facebook/ 

無論如何,我希望這可以幫助或給你一個想法。

+0

更新了Python3的代碼,它完美的工作乾杯!一旦你知道自己在做什麼,在圖形瀏覽器中進行調試其實很簡單,謝謝! –