使用 python facebook sdk 在 facebook 上发布更新/消息

Posted

技术标签:

【中文标题】使用 python facebook sdk 在 facebook 上发布更新/消息【英文标题】:Using python facebook sdk to post an update/message on facebook 【发布时间】:2019-01-29 09:17:32 【问题描述】:

根据我从文档中获得的说明,这是我使用 sdk 平台的尝试以及我得到的错误

In [5]: graph = facebook.GraphAPI(access_token=my_access_token, version="2.12")

In [6]: graph.put_object(parent_object='me', connection_name='feed',
...:                   message='Hello, world http://68.183.98.238/blog/best-floor-for-high-traffic-areas')
---------------------------------------------------------------------------
GraphAPIError                             Traceback (most recent call last)
<ipython-input-6-e8b64d6b32a8> in <module>
    1 graph.put_object(parent_object='me', connection_name='feed',
----> 2                   message='Hello, world http://68.183.98.238/blog/best-floor-for-high-traffic-areas')

~/code/envs/decomagna/lib/python3.6/site-packages/facebook/__init__.py in put_object(self, parent_object, connection_name, **data)
    190             "0/1/2".format(self.version, parent_object, connection_name),
    191             post_args=data,
--> 192             method="POST",
    193         )
    194

~/code/envs/decomagna/lib/python3.6/site-packages/facebook/__init__.py in request(self, path, args, post_args, files, method)
    311
    312         if result and isinstance(result, dict) and result.get("error"):
--> 313             raise GraphAPIError(result)
    314         return result
    315

GraphAPIError: Invalid OAuth access token.

访问令牌与我从 facebook 开发者页面获得的相同。

感觉我没有提供足够的验证,特别是代表我发帖。

【问题讨论】:

【参考方案1】:

首先:不能再向用户墙发布消息,publish_actions 权限已被弃用。 (https://developers.facebook.com/blog/post/2018/04/24/new-facebook-platform-product-changes-policy-updates/)

话虽如此,您可能正在使用屏幕截图中的“客户端令牌”,这是错误的。您必须向您的用户授权所需的权限,并改用生成的用户令牌。

https://developers.facebook.com/docs/facebook-login/ https://developers.facebook.com/docs/facebook-login/access-tokens/

【讨论】:

所以我不能在墙上发帖? 不,你不能:developers.facebook.com/blog/post/2018/04/24/… 您可以使用共享对话框来共享网址:developers.facebook.com/docs/sharing/reference/share-dialog

以上是关于使用 python facebook sdk 在 facebook 上发布更新/消息的主要内容,如果未能解决你的问题,请参考以下文章

如何在 ubuntu 中为 python 安装 facebook-sdk?

Facebook-sdk python模块没有属性GraphAPI

Facebook Graph API 和 python facebook-sdk 上传多个文件

Python Facebook SDK 获取我自己的照片

在 Python 中导入 facebook 模块时出错

python facebook-sdk 当我发布然后 ''facebook.GraphAPIError: POST 数据应该是字节或字节的迭代。它不能是 str 类型。”