我想为http://api.tumblr.com/v2/user/likes网址的用户获取tumblr“喜欢的”帖子。我已经使用tumblr注册了我的应用,并授权应用访问用户的tumblr数据,因此我有oauth_consumer_key
, oauth_consumer_secret
,oauth_token
和oauth_token secret
。但是,我不确定在进行api调用时如何处理这些细节。我试图创建一个命令行脚本,只输出json进行进一步处理,所以bash(cURL),Perl或python中的解决方案将是理想的。如何构建一个oauth api调用?
2
A
回答
0
我有点找到了答案。我最终使用perl中的OAuth :: Consumer连接到tumblr API。这是迄今为止我发现的最简单的解决方案,它的工作原理。
1
那么如果你不介意使用Python,我可以推荐rauth。没有Tumblr示例,但OAuth 1.0/a和OAuth 2.0都有real world, working examples。该API旨在简单直接。我不确定你有什么其他要求,但也许值得一试?
这里的工作的例子,如果你有兴趣去了:
from rauth import OAuth1Service
import re
import webbrowser
# Get a real consumer key & secret from http://www.tumblr.com/oauth/apps
tumblr = OAuth1Service(
consumer_key='gKRR414Bc2teq0ukznfGVUmb41EN3o0Nu6jctJ3dYx16jiiCsb',
consumer_secret='DcKJMlhbCHM8iBDmHudA9uzyJWIFaSTbDFd7rOoDXjSIKgMYcE',
name='tumblr',
request_token_url='http://www.tumblr.com/oauth/request_token',
access_token_url='http://www.tumblr.com/oauth/access_token',
authorize_url='http://www.tumblr.com/oauth/authorize',
base_url='https://api.tumblr.com/v2/')
request_token, request_token_secret = tumblr.get_request_token()
authorize_url = tumblr.get_authorize_url(request_token)
print 'Visit this URL in your browser: ' + authorize_url
webbrowser.open(authorize_url)
authed_url = raw_input('Copy URL from your browser\'s address bar: ')
verifier = re.search('\oauth_verifier=([^#]*)', authed_url).group(1)
session = tumblr.get_auth_session(request_token,
request_token_secret,
method='POST',
data={'oauth_verifier': verifier})
user = session.get('user/info').json()['response']['user']
print 'Currently logged in as: {name}'.format(name=user['name'])
充分披露,我保持rauth。
相关问题
- 1. 构建一个Paypal OAuth
- 2. 如何使用OAuth 1.0调用API?
- 3. 如何在Android中调用Oauth 1.0 API?
- 4. 如何从另一个TFS构建中调用TFS构建?
- 5. 用Javascript调用OAuth Twitter API
- 6. 构建一个oauth 1客户端来与另一个API接口
- 7. 使用oAuth为API身份验证构建C#/ ASP.NET API
- 8. 用laravel构建一个调用API项目
- 9. 如何调用OAuth API一旦我有access_token&refresh_token
- 10. Django构建一个Restful API
- 11. 构建一个Excel API
- 12. Slack Oauth /授权API调用
- 13. 如何解释谷歌api oauth回调
- 14. 如何构建一个CMS?
- 15. Twitter API:调用oauth时调用oauth的时间戳request_token
- 16. 如何从构建脚本中调用另一个FAKE构建脚本?
- 17. 使用/不使用OAuth和OpenID构建API
- 18. 如何构建一个JTextArea
- 19. Linkedin api使用java中的oauth调用
- 20. NodeJS使用Oauth获取API调用
- 21. 使用oAuth令牌进行API调用
- 22. Oauth使用Javascript调用Twitter API
- 23. 如何使用Maven构建一个jar?
- 24. 如何使用Python中的多个API调用返回的数据构建CSV?
- 25. 如何构建发送API调用的Android对话框
- 26. 如何使用django创建oauth(REST)API(如twitter或foursquare)?
- 27. 如何使用OAuth使用500PX API
- 28. 如何使用Observable构建限速API?
- 29. 如何使用QJEngine构建API?
- 30. 如何使用Jenkins apiToken构建API