Skip to main content

A simple Python wrapper around the Facebook Graph API

Project description

Python Facebook

A Python wrapper for the Facebook Common API.

Build Status Documentation Status Codecov PyPI

Introduction

We have refactored this library after v0.10.0. If you want to use old version, please see branch v0.

The new structure we will provide like follow show.

docs/docs/images/structure.png

Installing

If you want to use old version you can set version to 0.9.*, And this series will also support with python2.7

You can install this library from pypi:

$pip install --upgrade python-facebook-api
✨🍰✨

Usage

GraphAPI

Now you can use GraphApi class to communicate with Facebook Graph Api.

You can initial GraphApi with three different methods.

  1. if you already have an access token, you can initial with it:

    >>> from pyfacebook import GraphAPI
    >>> api = GraphAPI(access_token="token")
  2. if you want to use app credentials to generate app token:

    >>> from pyfacebook import GraphAPI
    >>> api = GraphAPI(app_id="id", app_secret="secret", application_only_auth=True)
  3. if you want to perform an authorization process to a user:

    >>> from pyfacebook import GraphAPI
    >>> api = GraphAPI(app_id="id", app_secret="secret", oauth_flow=True)
    >>> api.get_authorization_url()
    # ('https://www.facebook.com/dialog/oauth?response_type=code&client_id=id&redirect_uri=https%3A%2F%2Flocalhost%2F&scope=public_profile&state=PyFacebook', 'PyFacebook')
    # let user to do oauth at the browser opened by link.
    # then get the response url
    >>> api.exchange_user_access_token(response="url redirected")
    # Now the api will get the user access token.

Then you can get data from facebook.

Get object data:

>>> api.get_object(object_id="20531316728")
>>> {'name': 'Facebook App', 'id': '20531316728'}

More you can see the code because we still working on new structure.

FacebookAPI

Initial methods same with GraphAPI.

Get user data:

>>> fb.user.get_info(user_id="413140042878187")
>>> User(id='413140042878187', name='Kun Liu')

Get page data:

>>> fb.page.get_info(page_id="20531316728")
>>> Page(id='20531316728', name='Facebook App')

See more in documents.

Features

Now library has cover follows features

Facebook Graph API:

  • Application and Application’s edges

  • Page and Page’s edges

  • User and User’s edges

  • Group and Group’s edges

  • Event and Event’s edges

  • Server-Sent Events

IG Business Graph API:

  • User and User’s edges

  • Media and Media’s edges

IG Basic Display API:

  • User and User’s edges

  • Media and Media’s edges

SUPPORT

python-facebook-api had been being developed with Pycharm under the free JetBrains Open Source license(s) granted by JetBrains s.r.o., hence I would like to express my thanks here.

Jetbrains

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python_facebook_api-0.17.0.tar.gz (56.5 kB view details)

Uploaded Source

Built Distribution

python_facebook_api-0.17.0-py3-none-any.whl (76.7 kB view details)

Uploaded Python 3

File details

Details for the file python_facebook_api-0.17.0.tar.gz.

File metadata

  • Download URL: python_facebook_api-0.17.0.tar.gz
  • Upload date:
  • Size: 56.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: poetry/1.5.1 CPython/3.11.0 Linux/5.15.0-1042-azure

File hashes

Hashes for python_facebook_api-0.17.0.tar.gz
Algorithm Hash digest
SHA256 92764a540c5b205d323951048af907134e379af40f0d1c6f2d004bed5d7414ea
MD5 13ead6c2d306000fc4addc3181a9e446
BLAKE2b-256 92a66bb4dc1039d8132ec5e50e589fa33c4565aa0c44b064df738ace4fc0b4bb

See more details on using hashes here.

File details

Details for the file python_facebook_api-0.17.0-py3-none-any.whl.

File metadata

File hashes

Hashes for python_facebook_api-0.17.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8ea5db97ab8f7c31f87eb21009ba1b8ef38e6e743b817f92ac6411342e6d161d
MD5 518a330d36f564f9b1483921fb7ade46
BLAKE2b-256 9adbc15ccab7b41d2fc51ac2626c48a0a0b01f4c966c7f020066fcc70f517622

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page