2

我正在尝试使用Facepy(一种用于 Facebook 和 Python 的 API)来简单地将图像从我的桌面发布到我拥有授权代码和 publish_stream 和 upload_photo 权限的 Facebook 页面。(更新:我如何验证这是真的?)

它不适合我,虽然它适用于 Facepy 的作者。我不知道是什么导致了这个问题。当我运行此代码时,取自 Facepy 站点(并在我的计算机上使用 .jpg):

更新:这是我正在运行的全部代码:

from facepy import GraphAPI

print 'Trying Facebook page...'
my_token = 'xxxxxxxxxxxxxxxxx'
graph = GraphAPI(my_token)

# Get my latest posts
my_posts = graph.get("me/posts")

 #Post a photo of a parrot
graph.post(path = "me/photos",source = open("python.png"))

print 'Done.'

Facepy 返回此错误:

Error: (#1) An unknown error occurred

我已经在 WinXP 上使用 Python 2.5 和 Python 2.7 进行了尝试,但未成功。然而,Facepy 可以通过graph.get('me/posts')

任何让这个工作的建议将不胜感激。

4

1 回答 1

2

我有同样的问题。显然找到了答案。

根据GitHub pagesource参数需要一个rb模式:

graph.post(
path = 'me/photos',
source = open('parrot.jpg', 'rb')

为我工作(使用 Python 3 和 Graph API 2.8)。

要从 URL 发布,您可以使用url

par = {
    "caption": "Some text",
    "url": "https://example.com/1.jpg"}

send_post = graph.post(path='me/photos', **par)
于 2017-02-10T15:16:56.350 回答