Python Facebook API - 洞察/参与数据?

时间:2017-05-11 22:25:28

标签: python facebook facebook-graph-api

所以我正在尝试使用Facebook Python API来提取我们的参与数据(喜欢,分享等等,基本上所有的东西都在Facebook网站的“见解”标签下)。

我设法通过API获得连接并使访问令牌正常工作,没有问题。

绝对不知道如何开始提取数据(无论是在帖子级别还是页面级别),看看文档和一些谷歌搜索,没有运气。有命令吗?它是一个不完整的API,我最好尝试使用不同的语言吗?

任何帮助非常大的帮助!

1 个答案:

答案 0 :(得分:2)

我不确定您链接到的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并指向,我只测试了idnamelikeslink(我无法找到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/

无论如何,我希望这有助于或给你一个想法。