簡體   English   中英

通過python和graphapi將圖像發布到Facebook

[英]Post image to facebook via python and graphapi

希望得到一些有關錯誤的幫助。 我能夠對文本進行身份驗證並將其發布到用戶牆上(因此,我認為我已經正確進行了身份驗證)。

我使用的代碼如下:

self.client = GraphAPI(ACCESS_TOKEN)
self.client.put_photo(open("test.jpg"), "test post from app - please ignore")

我收到以下錯誤:

Traceback (most recent call last):
  File "J:\Projects\python Code\pyhton test programs\upload posts to facebook v3.py", line 69, in OnFacebookPublishButton
    self.client.put_photo(open("test.jpg"), "test post from app - please ignore")
  File "C:\Python27\lib\site-packages\facebook.py", line 231, in put_photo
    raise GraphAPIError(response)
facebook.GraphAPIError: Your photos couldn't be uploaded. Photos should be saved as JPG, PNG, GIF, BMP or TIFF files.

我已經使用Windows探索,ACDSee,Photoshop,Paint和Faststone驗證了jpg是有效的。

嘗試這個:

self.client = GraphAPI(ACCESS_TOKEN)
with open("test.jpg","rb") as image:
    self.client.put_photo(image, "test post from app - please ignore")

打開函數需要幾個參數,其中一個是打開模式,您的錯誤很可能是您未在文件名后指定打開模式。

另一個重要的事情是,當您打開文件時,您還需要關閉它,因此您的代碼看起來似乎並不包含.close()函數調用,因而使您的代碼步履蹣跚。

在我的建議下,我將圖像以讀取(二進制)模式打開,並使用with語句避免使用close語句。

我建議您花一些時間通過閱讀官方文檔https://docs.python.org/2/library/functions.html#open了解開放功能。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM