Автоматическая публикация на странице facebook с помощью python


Я хочу сделать скрипт, который позволит мне публиковать посты на моей фан-странице facebook (администратором которой я являюсь)

Насколько я видел, большинство примеров graph api посвящены созданию приложений facebook на python и заставляют их общаться с python, что совершенно отличается от того, что я хочу.

Кроме того, API graph требует маркера oauth, который, как утверждается в документации, получен следующим образом:

Https://www.facebook.com/dialog/oauth ? client_id=YOUR_APP_ID&redirect_uri=YOUR_URL

Я думаю, что это подразумевает:

А) я должен создать приложение facebook для этого, которое я не считал необходимым (в конце концов, это то, что потребует только моих стандартных учетных данных и не будет использоваться другими людьми), но это нормально. У меня есть приложение, созданное для этой задачи. B) мне нужен URL-адрес, которого у меня нет, потому что это просто скрипт.

Есть идеи о том, где я должен искать некоторую информацию?

1 5

1 ответ:

Сначала вам нужно получить свой Facebook_App_Id и Facebook_App_Secret, которые вы получите от facebook, когда зарегистрируете свое приложение.

Затем вы включаете необходимые URL-адреса.

redirect_client_url = 'http://your-redirect-url'
access_token_url = 'https://graph.facebook.com/oauth/access_token?client_id='+consumer_key+'&redirect_uri='+red   irect_client_url+'&client_secret='+consumer_secret+'&code='
scope = 'publish_stream,offline_access,user_birthday,email'
authorize_url = 'https://graph.facebook.com/oauth/authorize?client_id='+consumer_key+'&redirect_uri='+redirect_client_url+'&scope='+scope+'&display=touch'
user_info_url = 'https://graph.facebook.com/me?access_token='

Вашей потребительской ключ " и " секрет-это Facebook приложение facebook ID и пароля соответственно.

Вы в основном получите access_token, следуя рекомендациям Oauth2. 0, и сохраните access_token и fan page idsomewhere в своей базе данных. https://github.com/simplegeo/python-oauth2 - хороший пример того, как получить маркер oauth. Затем при попытке опубликовать используйте маркер доступа, используя что-то вроде этого.

post_data = {'access_token':access_token, 'message':'hey this is a test!'}
request_path = str(facebook_id)+'/feed'
post_data = urllib.urlencode(post_data)
response = urllib2.urlopen('https://graph.facebook.com/%s' % request_path, post_data)

Это должно работать для размещения на стене пользователя. Но я уверен, что публикация на фан-странице facebook должна быть чем-то очень похожим.