所以我正在尝试使用Facebook Python API来提取我们的参与数据(喜欢,分享等等,基本上所有的东西都在Facebook网站的“见解”标签下)。
我设法通过API获得连接并使访问令牌正常工作,没有问题。
绝对不知道如何开始提取数据(无论是在帖子级别还是页面级别),看看文档和一些谷歌搜索,没有运气。有命令吗?它是一个不完整的API,我最好尝试使用不同的语言吗?
任何帮助非常大的帮助!
答案 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并指向,我只测试了id
,name
,likes
和link
(我无法找到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/
无论如何,我希望这有助于或给你一个想法。