Приложение для аутентификации Facebook для настольных компьютеров (на основе консоли)

Я работаю над приложением python, которое позволяет мне публиковать обновления / статусы в Facebook.

У меня возникает основная проблема с получением токенов доступа.

Поскольку это приложение работает на рабочем столе, нет никакого вопроса об использовании какого-либо веб-сервера.

Я понимаю, что мне нужно открыть URL-адрес:

https://www.facebook.com/dialog/oauth?client_id=YOUR_APP_ID&redirect_uri=https://www.facebook.com/connect/login_success.html 

.. и вытащите маркеры из перенаправленного URL.

Но даже это не подходит, поскольку мое приложение является консольным. Ближе всего я могу использовать встроенный браузер, используя модуль mechanize Python.

Есть ли другой вариант?

  • oauth google с помощью python
  • jira python oauth: как получить параметры для аутентификации?
  • Как сделать доступ в Facebook доступным в приложении Django?
  • Использование Google OAuth2 с Flask
  • Python - проблема SSL с Oauth2
  • Повторное использование токенов авторизации OAuth1 с rauth
  • Инициализация клиента Oauth в python для tumblr API с использованием Python-oauth2
  • API Twitter: простое обновление статуса (Python)
  • 2 Solutions collect form web for “Приложение для аутентификации Facebook для настольных компьютеров (на основе консоли)”

    Возможно, у вас может быть какой-то процесс настройки, когда вы получаете токены с автономным доступом, поэтому пользователю нужно будет предоставить страницу входа в facebook только один раз, после чего вы будете использовать этот токен позже с консольным приложением.

    См. Offline_access на странице http://developers.facebook.com/docs/authentication/permissions/.

    Можете ли вы попробовать использовать PhantomJS ?

    PhantomJS – это инструмент командной строки, который объединяет и внедряет WebKit. Буквально он действует как любой другой веб-браузер, основанный на WebKit, за исключением того, что на экране ничего не отображается (таким образом, термин «безголовый»). В дополнение к этому, PhantomJS можно контролировать или писать с помощью JavaScript API.

    Python - лучший язык программирования в мире.