import urllib import oauth import gdata.contacts import gdata.contacts.service CONSUMER_KEY = 'yourdomain.com' CONSUMER_SECRET = 'YOUR_CONSUMER_SECRET' CONTACTS_URL = 'http://www.google.com/m8/feeds/contacts/default/full' # Setup 2 legged OAuth consumer based on our admin "credentials" consumer = oauth.OAuthConsumer(CONSUMER_KEY, CONSUMER_SECRET) user = 'any.user@yourdomain.com' params = {'max-results': 50, 'xoauth_requestor_id': user} # Construct the request manually and sign it using HMAC-SHA1 # Note: The params dictionary needs to be passed in separately from the base URL request = oauth.OAuthRequest.from_consumer_and_token( consumer, http_method='GET', http_url=CONTACTS_URL, parameters=params) request.sign_request(oauth.OAuthSignatureMethod_HMAC_SHA1(), consumer, None) # See patch @ http://code.google.com/p/oauth/issues/detail?id=31 headers = request.to_header() client = gdata.contacts.service.ContactsService() # Query the user's contacts and print their name & email uri = '%s?%s' % (request.http_url, urllib.urlencode(params)) feed = client.GetFeed(uri, extra_headers=headers, converter=gdata.contacts.ContactsFeedFromString) for entry in feed.entry: print '%s, %s' % (entry.title.text, entry.email[0].address)
2 Legged OAuth in Python
Google Apps Premier/Education administrators can take advantage of 2 legged OAuth to communicate with the Google Data APIs.
If you're using the Google Data Python client library 1.2.3+:
An updated sample is here available here.
Otherwise, if you're stuck with an older version of the library (< 1.2.3), you can use the
Python OAuth library from oauth.net.
Hi Sinuy,
ReplyDeleteWith 2 Legged OAuth, there's no oauth token, so you don't have to fetch a request token.
An example of 3 Legged OAuth (normal flow) using the Python library is available here:
http://code.google.com/p/gdata-python-client/source/browse/trunk/samples/oauth/oauth_example.py
Feel free to post in the Google Accounts APIs group if you have questions.
http://groups.google.com/group/Google-Accounts-API
Eric
Hi,
ReplyDeletei have got the same error message
signature_invalid base_string:GET&https%3A%2F%2Fwww.google.com%2Faccounts%2FOAuthGetRe ,.........
the above code works perfect with twitter but not with google.
did anybody got the request token for google ?
I really thank the author of this article, the article has great significance for me, it just leads me to do better things for this life. Very meaningful, thank you very much, wish you happy
ReplyDeleteMobimatic Review
Mobimatic App Builder
Mobimatic Bonus
Mobimatic Review
Mobimatic App Builder
Mobimatic Bonus
Mobimatic Review
Mobimatic App Builder
Mobimatic Bonus
Mobimatic Review
Mobimatic App Builder
Mobimatic Bonus
Mobimatic Review
Mobimatic App Builder
Mobimatic Bonus
Mobimatic Review
Mobimatic App Builder
Mobimatic Bonus
This comment has been removed by the author.
ReplyDeleteTo fix HP printer driver Windows 10 issue , impair HP Smart Install, run ... of introducing HP printer is simple and won't take in excess of a couple of moments.
ReplyDeleteThe ultimate goal of custom argumentative essay writing services is to provide Argumentative Essay Writing Help and argumentative essay writing tips since argumentative essay structure seekers lack time to complete their college argumentative essays.
ReplyDeleteGreat article, readable content, and well written. Thanks for sharing.
ReplyDeletePython Training in Pune
That's Great. Thanks for sharing us nice stuff. This content is really valuable and knowledgeable. I appreciate your knowledge and your writing skill. Keep writing...
ReplyDeleteEIS SM Pendrive Classes
Great Post.
ReplyDeleteJoin Python Course in Pune