如何用python 快速做出一个api服务
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用python 快速做出一个api服务相关的知识,希望对你有一定的参考价值。
如何使用python 快速做出一个api服务
参考技术A python 轻量级的框架flask可以让你在两分钟内,搭建出一个简单的
api接口服务
轻量级不代表功能简单,容易上手
它的优势是,模块化,易扩展,定制性强
比如:一个最简单api接口2 分钟搞定
加入你需要加入登录验证功能
加入页面跳转功能呢
如果想要渲染加载前段页面呢
flask框里有你意想不到的插件,让你完成最够强大
的功能,怎么样,赶紧来试试吧本回答被提问者采纳 参考技术B 如果功能单一的话就用flask
功能复杂一些,就用django 参考技术C 楼上说的flask正解
如何用python调用新浪微博的api
请问一下我如何用python调用新浪微博的api,本人菜鸟,会C++,python不会。最好给我举个调用的例子,例如users/show是根据用户ID获取用户信息,但是如何调用?官方的api没说明,而且实例也只给了Json的。请高手给我详细说明,谢谢!
参考技术A 与Twitter相比,新浪微博做得更好的地方是直接提供了SDK(Twitter貌似只有第三方的SDK)。而我自然是用Python SDK,一个只有几十k的玩意。接着进入exanples文件夹(新浪这英文水平,不提了…),打开oauthSetTokenUpdate.py文件就是一个很标准的例子了。
于是照着写了一个:
view sourceprint?01 # -*- coding: utf-8 -*-
02
03 from weibopy.auth import OAuthHandler
04 from weibopy.api import API
05
06
07 consumer_key= '应用的key'
08 consumer_secret ='应用的App Secret'
09
10 auth = OAuthHandler(consumer_key, consumer_secret)
11 auth_url = auth.get_authorization_url()
12 print 'Please authorize: ' + auth_url
13 verifier = raw_input('PIN: ').strip()
14 auth.get_access_token(verifier)
15 api = API(auth)
16
17 status = api.update_status(status='hello world', lat='12.3', long='45.6') # 注意status必须是UTF-8编码的字符串,经纬度是可以不写的
18 print status.id
19 print status.text
注意consumer_key和consumer_secret需要创建一个应用才能拿到。
运行这个程序,你会发现它可耻地失败了,报出一条语法错误:
File 'C:\Documents and Settings\Administrator\Desktop\sinatpy\weibopy\api.py',
line 197 )(self, *args, post_data=post_data, headers=headers)
^SyntaxError: invalid syntax于是打开weibopy\api.py这个文件,把197行改成:
)(self, post_data=post_data, headers=headers, *args)
再运行这个程序就会提示一个URL链接,在浏览器里打开这个链接,并且给予访问权限,就会拿到一串PIN码。把这个PIN码输上去,就会发送一条推了,并且还会显示用户的Access token key和Access token secret。
可以看到整个过程是很简单的:
用你的consumer_key和consumer_secret创建一个OAuthHandler对象auth。
告诉用户访问auth.get_authorization_url(),并让用户授权这个应用。
拿到用户的PIN码,用auth.get_access_token()拿到用户的Access token key和Access token secret。
用auth创建一个API对象api。
调用api的方法,例如update_status()就是发推。详细说明可以看API文档。
当然,每次都要求用户输入PIN码也太傻了,所以在用auth.get_access_token()拿到Access token key和Access token secret之后,就可以直接用它们来创建API对象了:
view sourceprint?01 # -*- coding: utf-8 -*-
02
03 from weibopy.auth import OAuthHandler
04 from weibopy.api import API
05
06
07 consumer_key= '应用的key'
08 consumer_secret ='应用的App Secret'
09 token = '用户的Access token key'
10 tokenSecret = '用户的Access token secret'
11
12 auth = OAuthHandler(consumer_key, consumer_secret)
13 auth.setToken(token, tokenSecret)
14 api = API(auth)
15
16 status = api.update_status(status='搞定收工~')
最后想说的是新浪微博的应用审核真麻烦,没通过审核的想show下自己个性化的应用名都不行。罢了,反正我也只是玩玩而已~
看看有没有用
参考资料:http://hi.baidu.com/xayhjy3/blog/item/d7f7734f4aaa5ad5d0c86ab7.html
以上是关于如何用python 快速做出一个api服务的主要内容,如果未能解决你的问题,请参考以下文章