API.put_photo устарел. Существует ли новый метод публикации фотографий или рисунков на Facebook с использованием Python API?

#python-3.x #facebook #facebook-sdk-3.1

#python-3.x #Facebook #facebook-sdk-3.1

Вопрос:

Я использую facebook API (версия 3.1.) для автоматической публикации в моей ленте Facebook с помощью скрипта python (показан ниже), который до недавнего времени работал нормально. Я обнаружил, что facebook устарел функцию put_photo из новой версии api (8.0), но не могу найти, как вызвать новую функцию или новый метод для автоматической публикации фотографий из скрипта python. Итак, есть ли новый способ сделать это? Чего мне не хватает?

Большое спасибо за помощь!

 import facebook
import sys,os
import json
import numpy as np

def facebook_post_sentido(figure_name):

    def get_cfg():

        cfg = {
        "page_id"      : "my_id"
        "access_token" : "my_token"
        }

        return cfg

    def gen_api(cfg):

        API = facebook.GraphAPI(cfg['access_token'])
        print("generating api connection")
        return API

    cfg = get_cfg()
    API = gen_api(cfg)
    photo_id = API.put_photo(image=open(figure_name, 'rb'), )
    # API.put_object(parent_object=cfg["page_id"], connection_name="feed", 
    #               message="SISMO SENTIDO RELOCALIZADO", 
    #               attached_media=json.dumps([{'media_fbid': str(photo_id.get('id', ''))}]))

facebook_post_sentido(figure_name="myfigure")
  

Когда я запускаю код, я получаю следующую ошибку:

Facebook.Ошибка GraphAPIError: (#200) Эта конечная точка устарела, поскольку требуемое разрешение publish_actions устарело

Ответ №1:

Больше нет способа опубликовать фотографию в профилях пользователей через API.

Это было полностью удалено, так же, как и создание обычных сообщений через API. За исключением видео в реальном времени, вы больше не можете ничего публиковать в профилях пользователей через API.

Приложения, желающие предоставить конечным пользователям функциональность совместного использования, могут использовать одно из предоставленных диалоговых окон. (Но даже они не позволяют загружать фотографии, вы можете делиться только ссылками.)