Python实现Restful API
最近写了一个网络验证登录的爬虫,需要发布为Rest服务,然后发现Flask是一个很好的Web框架,使用Python语言实现。
1. 安装flask
pip install flask
2.编写简单的HelloWorld
app.py
from flask import Flask
app = Flask(__name__)
@app.route('/')
def index():
return "Hello, World!"
if __name__ == '__main__':
app.run(debug=True)
3.实现登录验证Rest服务
login.py 是用爬虫写好的登录模块类
from flask import Flask
from flask import request
from login import Context
from login import NormalLogin
app = Flask(__name__)
@app.route('/cm/api/v1.0/verifyuser', methods=['POST'])
def verifyUser():
error = None
if request.method == 'POST':
login = NormalLogin()
ctx = Context(login)
page = ctx.login(request.form['studentId'],
request.form['password'])
if page == "success":
return "success, 验证成功"
return "failed, 验证失败"
if __name__ == '__main__':
app.run(debug=True)
启动web服务,python app.py
在浏览器输入http://127.0.0.1:5000/即可看到Hello, World!
另外对于POST方法的测试,用浏览器就不太方便了,可以在Linux中安装curl工具来进行测试,或者使用一些专门的GUI程序,比如Postman
curl -d "studentId=123456&password=123456" "http://127.0.0.1:5000/cm/api/v1.0/verifyuser"