7

Python SDK 似乎已从 Github 中删除。https://github.com/facebook/python-sdk返回 404。

他们是否将开发项目转移到其他地方,放弃了支持,或者这只是一个错误?开发者网站仍然链接到 Github(参见https://developers.facebook.com/opensource/),但这并不意味着什么。

有人有克隆吗?

编辑

我意识到 API 仍然可用,但这并不是重点。许多第三方软件包依赖于 SDK(如 django-socialregistration)。删除存储库破坏了所有这些(因为它通常是包要求),这反过来又破坏了站点部署。

4

3 回答 3

2

要回答克隆问题,是的:

https://github.com/flashingpumpkin/facebook-sdk-fork

这是昨天的最新情况。

于 2011-12-16T13:36:11.393 回答
1

来自脸书的回应

Facebook的官方回应是

我们不再支持或提供官方的 Facebook Python SDK。您可以找到几个用于 Python 的非官方 SDK,或者您可以使用简单的 urllib.urlopen 直接调用 Graph API。

来源:https ://developers.facebook.com/bugs/200182333402545

于 2012-01-11T11:34:47.990 回答
0

不,您可以使用 urlread 函数使用 Facebook 图形 API。您需要做的就是使用 Javascript 从用户那里获取访​​问令牌,FB 开发人员网站上有相关文档。这是一个如何使用 URL 库函数的示例



class Facebook(object):

    def __init__(self, auth_token):
        self.auth_token = auth_token

    def load(self, method, user_id = 'me'):
        raw = urlopen("https://graph.facebook.com/%s/%s/?access_token=%s" % (user_id, method, self.auth_token)).read()
        data = loads(raw)
        return data['data'] or []

    def with_fields(self, method, user_id = 'me', fields = 'name,likes'):
        raw = urlopen("https://graph.facebook.com/%s/%s/?fields=%s&access_token=%s" % (user_id, method, fields, self.auth_token)).read()
        data = loads(raw)
        return data['data'] or []

    def likes(self, user_id = 'me'):
        return self.with_fields('likes', user_id, 'name,category')

    def me(self):
        data = loads (urlopen("https://graph.facebook.com/me?fields=name&access_token=%s" % self.auth_token).read())
        return data or {}

    def expand(self, like):
        data = loads (urlopen("https://graph.facebook.com/%s?access_token=%s" % (like['id'], self.auth_token)).read())
        return data or {}

    def friends(self, user_id = 'me'):
        return self.load('friends', user_id)

    def movies(self, user_id = 'me'):
        return self.with_fields('movies', user_id)

    def music(self, user_id = 'me'):
        return self.with_fields('music', user_id)

    def picture(self, user_id='me', size=None):
        if size:
            return "https://graph.facebook.com/%s/picture?access_token=%s&type=%s" % (user_id, self.auth_token, size)
        return "https://graph.facebook.com/%s/picture?access_token=%s" % (user_id, self.auth_token)
于 2011-12-16T13:08:36.023 回答