Экземпляр PyFacebook: Facebook () не имеет потоковых методов - PullRequest
1 голос
/ 25 февраля 2010

Мне нужно обновить мою фан-страницу Facebook в приложении django, чтобы у меня был этот код:

import facebook
from django.conf import settings

def login_facebook():
    fb = facebook.Facebook(settings.FACEBOOK_API_KEY, settings.FACEBOOK_SECRET_KEY)
    fb.session_key = settings.FACEBOOK_SESSION
    fb.secret = settings.FACEBOOK_SECRET_KEY
    fb.uid = settings.FACEBOOK_UID
    return fb

def update_status(fb, message):
    return fb.stream.publish(message=status_message)

И я использую это для запуска с ipython:

import src.tests.scripts.facebook_publish_fanpage as f
fb = f.login_facebook()
f.update_status(fb, 'This is a test')

Но я получаю это исключение:

AttributeError: 'Facebook' object has no attribute 'stream'

Я уже дал разрешения приложению, выполнив следующие 2 шага:

Публикация поста на странице Facebook (1) и авторизация фан-страницы Facebook для обновления статуса (2)

Но что бы я ни пытался делать (сейчас занимаюсь этим несколько часов ...), я не могу опубликовать на странице ...

Я потерян сейчас, любая помощь?

(1) tech.karolzielinski.com/publish-post-of-facebook-page-wall-as-a-page-not-a-user-python-facebook-rest-api

(2) stackoverflow.com/questions/2097665/authorizing-a-facebook-fan-page-for-status-updates

PD: Извините, у меня пока нет разрешения на добавление ссылок, я в основном читатель в SO

1 Ответ

1 голос
/ 25 февраля 2010

После поиска часов я наконец нашел решение ... не использовать потоковые методы, а вот это:

fb(method='stream_publish', args={'session_key': settings.FACEBOOK_SESSION, 'uid':PAGE_ID, 'target_id': 'NULL', 'message':'MESSAGE_HERE'})

Нашел решение в этой записи блога: http://danielquinn.org/blog/1578.html

Это работает !!

...