PyFacebook: Facebook () Instanz hat keine Strom Methoden
-
22-09-2019 - |
Frage
Ich brauche meine Facebook Fan Page in einer django App zu aktualisieren, damit ich diesen Code haben:
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)
Und ich benutze diese es mit ipython auszuführen:
import src.tests.scripts.facebook_publish_fanpage as f
fb = f.login_facebook()
f.update_status(fb, 'This is a test')
Aber ich diese Ausnahme erhalten:
AttributeError: 'Facebook' object has no attribute 'stream'
Ich habe bereits Berechtigungen für die App im Anschluss an diesen zwei Schritten:
Veröffentlichen Post auf Facebook-Seite (1) und Autorisieren eine Facebook Fan-Seite für Statusaktualisierungen (2)
Aber egal was ich versuche, (es ein paar Stunden sind jetzt gerade ...) Ich kann nicht auf der Seite veröffentlichen ...
Ich bin jetzt verloren, jede mögliche Hilfe?
(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: Leider Erlaubnis nicht über die Links noch hinzufügen, ich bin meistens ein Leser in SO
Lösung
Nach Stunden der Suche fand ich endlich die Lösung ... nicht zu verwenden Strom Methoden, aber diese:
fb(method='stream_publish', args={'session_key': settings.FACEBOOK_SESSION, 'uid':PAGE_ID, 'target_id': 'NULL', 'message':'MESSAGE_HERE'})
Die Lösung wird bei diesem Blog-Eintrag gefunden: http://danielquinn.org/blog/1578.html
Das funktioniert !!