使用Django在Facebook上分享链接

时间:2013-06-24 09:45:22

标签: django facebook facebook-graph-api facebook-opengraph

首先让我提一下我不是一个facebook用户,并且我完全完全对如何在Facebook上实现具有页面/个人资料/任何内容的简单任务感到困惑我的Django应用程序。我读到的所有内容似乎都是冲突的或过时的。

基本上我希望用户能够关注/喜欢我的页面/个人资料/应用程序,我的Django应用程序通过在我的Django应用程序上共享/发布指向新页面的链接进行更新,然后他们看到我已经分享了这些链接在他们登录帐户时。我在django网站上分享的网页已经嵌入了Open Graph元数据。

  1. 哪种Facebook帐户最适合这种情况。页面?配置文件?还有别的吗?
  2. 我是否需要创建一个Facebook应用程序才能执行此操作?
  3. 什么django软件包最适合这个或者更容易进行身份验证并使用几行代码自行完成?
  4. 更新 感谢Cbroe的评论,我已经能够在这方面取得进展。我创建了一个Facebook'页面',一个fb应用,并使用该应用获取具有在此页面上发布的权限的页面令牌。

    我还使用facebook-sdk软件包https://github.com/pythonforfacebook/facebook-sdk实现了代码,以共享我的网页facebook墙/时间线的链接。这有效但是帖子显示为我的个人资料发布,而不是页面本身。有没有办法改变这个?

    def post_to_fb(page_url, pic_url):
    
    access_token_page='x'
    FACEBOOK_APP_ID = 'z'
    FACEBOOK_APP_SECRET = 'x'
    FACEBOOK_PROFILE_ID = 'x'
    
    oauth_args = dict(client_id     = FACEBOOK_APP_ID,
                      client_secret = FACEBOOK_APP_SECRET,
                      grant_type    = 'client_credentials')
    
    oauth_response = urllib.urlopen('https://graph.facebook.com/oauth/access_token?' + urllib.urlencode(oauth_args)).read()
    
    attach = {
      "name": 'Hello world',
      "link": page_url,
      "caption": 'test post',
      "description": 'some test',
      "picture" : pic_url,
    }
    
    facebook_graph = facebook.GraphAPI(access_token_page)
    try:
        response = facebook_graph.put_wall_post('', attachment=attach, profile_id="my page id")
    except facebook.GraphAPIError as e:
        print e
    

0 个答案:

没有答案