首页 文章

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

提问于
浏览
2

所以我试图使用Facebook Python API来提取我们的参与数据(喜欢,分享等等,基本上所有的东西都在Facebook网站上的"Insights"标签下) .

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

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

任何帮助巨大的appriciated!

1 回答

  • 2

    我不确定您链接到的Facebook Python API的状态,以及Python SDK的facebook标签显示(已弃用)或(非官方) . 但是,facebook-graph-api标记页面指出:

    Facebook Graph API由Facebook平台提供,以与Facebook的社交图进行交互 .

    它应该保持一致,可靠和最新,因为它是源,而不是一些第三方开发人员 . The Graph API目前是v2.9并且有很多最新文档,Graph API Explorer对于练习查询很有用 .

    这里's a simple Python script that gets JSON data from the graph api. It'只在Python2.x中,但提出了基本的想法,获取用户名,喜欢,链接等 . 有many other fields and endpoints你可以包括并指向,我只测试 idnamelikeslink (我不能找不到 shares (我'm not even sure what that would be, I'我不是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/
    

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

相关问题