Successfully reported this slideshow.
Your SlideShare is downloading. ×

PyFoursquare: Python Library for Foursquare

Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Ad
Upcoming SlideShare
JavaScript Design Patterns
JavaScript Design Patterns
Loading in …3
×

Check these out next

1 of 13 Ad

More Related Content

Slideshows for you (20)

Viewers also liked (20)

Advertisement

Similar to PyFoursquare: Python Library for Foursquare (20)

More from Marcel Caraciolo (20)

Advertisement

Recently uploaded (20)

PyFoursquare: Python Library for Foursquare

  1. 1. Py Python API interface for Foursquare Marcel Caraciolo Cientist Chief, Orygens @marcelcaraciolo / marcel@orygens.com http://aimotion.blogspot.com Saturday, January 28, 2012
  2. 2. First, What is Foursquare ? A location based social network Share with your friends where you are and and what to do there Discover new places and Share reviews http://www.foursquare.com Saturday, January 28, 2012
  3. 3. Foursquare API Foursquare provides an API to create new apps for using their data It has several components to access: User Data, Checkins Data, Reviews,Venues, etc. Using REST API and Oauth Saturday, January 28, 2012
  4. 4. PyFoursquare Created at 2010 as a private project for my master thesis. Be a wrapper for interfacing with Foursquare API in Python There are many others but they are not updated https://github.com/marcelcaraciolo/foursquare Saturday, January 28, 2012
  5. 5. Tweepy A Python library for accessing the Twitter API. Easy-To-Use API and Models-based oriented Each entity of Twitter is represented as a Model import tweepy public_tweets = tweepy.api.public_timeline() for tweet in public_tweets: print tweet.text Saturday, January 28, 2012
  6. 6. PyFoursquare The idea was to be a Tweepy-based Architecture for Foursquare It is on version 0.0.12 Only supports Places Details, Tips, Users and Places Search class Model(object):     def __init__(self, api=None):         self._api = api     def __getstate__(self):         # pickle         pickle = dict(self.__dict__)         try:             del pickle['_api'] # do not pickle the API reference class Tip(Model):         except KeyError:     @classmethod             pass     def parse(cls, api, json):         return pickle         tip = cls(api)         for key, value in json.items():     @classmethod             if key == 'done' or key == 'todo':     def parse(cls, api, json):                 setattr(tip, key, value['count'])         """Parse a JSON object into a model instance."""             elif key == 'user':                 setattr(tip, key, User.parse(api, value))         raise NotImplementedError             else:                 setattr(tip, key, value)         return tip     def __repr__(self):         return self.text[:10].encode('utf-8') Saturday, January 28, 2012
  7. 7. PyFoursquare Step 1 : Install the PyFoursquare easy_install pyfoursquare >>> import pyfoursquare Saturday, January 28, 2012
  8. 8. PyFoursquare Step 2 : Create your Developer Account and App https://foursquare.com/oauth/ Saturday, January 28, 2012
  9. 9. PyFoursquare Step 3 : Authenticate your App import foursquare # # This mode of authentication is the required one for Foursquare # The client id and client secret can be found on your application's Details # page located at https://foursquare.com/oauth/ client_id = "" client_secret = "" callback = '' auth = foursquare.OauthHandler(client_id, client_secret, callback) #First Redirect the user who wish to authenticate to. #It will be create the authorization url for your app auth_url = auth.get_authorization_url() print 'Please authorize: ' + auth_url #If the user accepts, it will be redirected back #to your registered REDIRECT_URI. #It will give you a code as #https://YOUR_REGISTERED_REDIRECT_URI/?code=CODE code = raw_input('The code: ').strip() #Now your server will make a request for #the access token. You can save this #for future access for your app for this user access_token = auth.get_access_token(code) print 'Your access token is ' + access_token Saturday, January 28, 2012
  10. 10. PyFoursquare Step 4 : After Authorizing play with the API, yeah! api = foursquare.API(auth) #Now you can access the Foursquare API! result = api.venues_search(query='Burburinho', ll='-8.063542,-34.872891') #You can acess as a Model print dir(result[0]) #Access all its attributes print result[0].name Saturday, January 28, 2012
  11. 11. Release Plan More Coverage tests in the API Support for new entities: Photos, Checkins, etc. More Examples and docs MIT License and It is Open-Source! Fork and pull requests mandatory! https://github.com/marcelcaraciolo/foursquare Saturday, January 28, 2012
  12. 12. Download your app at http://www.foursquare.com Saturday, January 28, 2012
  13. 13. Py Python API interface for Foursquare Marcel Caraciolo Cientist Chief, Orygens @marcelcaraciolo / marcel@orygens.com http://aimotion.blogspot.com Saturday, January 28, 2012

×