Skip to content

emre/fb.py

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

37 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

fb.py

fb.py is a software development kit for Facebook. It supports both old rest api and new graph api. it uses oauth, old style signature/secretkey based api calls for old rest api are not supported at this time.

you can find official documentation at facebook about api calls and methods.

  1. old rest api: http://developers.facebook.com/docs/reference/rest/
  2. graph api: http://graph.facebook.com

dependencies

  1. python-simplejson

installation

  1. get the archive.
  2. run python setup.py install (with root priviliges)

usage in Django

  1. add these lines to your settings.py

    FACEBOOK_CONFIG = { "redirect_uri" : "%s/fbconnect" % BASE_URL, "scope" : 'email,publish_stream,offline_access,user_hometown,user_location', "api_key" : "[INSERT_API_KEY_HERE]", "app_secret" : "[INSERT_APPLICATION_SECRET_HERE]", "app_id" : "[INSERT_APPLICATION_ID_HERE]", }

  2. add to your MIDDLEWARE_CLASSES:

    fbpy.middleware.FBPYMiddleware

  3. after these steps, you can call FBPY instance as request.facebook. a simple view example:

    if not request.facebook.is_authenticated(): return HttpResponseRedirect(request.facebook.get_login_url()) else: user_info = request.facebook.graph().get_object("me") return render_to_response("welcome.html", user_info, context_instance = RequestContext(request))

  4. read the code/wait for more documentation. fb.py is one python file with inline documentation, so browsing the code is a good idea than waiting a fully documentation.

installation of "example_project"

  1. there is a sandbox django project in example_project directory.

  2. download it and edit settings.py. (FACEBOOK_CONFIG variable.)

  3. run python manage.py syncdb (we need sessions!)

  4. run python manage.py runserver

  5. go to your web browser, and see 127.0.0.1:8000/fbconnect

low level api

  1. in order to send calls to new graph api, a simple request should be like that: reply = request.facebook.graph().get_object("me")

  2. old rest api example: (taking mutual friends for a spesific profile id) reply = request.facebook.rest().get_object("friends.getMutualFriends", target_uid = profile_id)

  3. happy hacking!

to-do

  1. more documentation.

  2. handling cookie/session storage in FBPY.

thanks

  1. Timu Eren & Yilmaz Ugurlu - suggestions and ideas.

for donations:

Click here to lend your support to: donate for updated and new fb.py version and make a donation at www.pledgie.com !

About

facebook development kit for Django

Resources

Code of conduct

Security policy

Stars

Watchers

Forks

Packages

No packages published

Languages