用python创建运动步数修改api
前言
专业开设了FastApi这门课程,先通过这样的小程序简单熟悉一下。
基于前面的小米运动步数修改的python源码之上导入FastAPI 和Uvicorn
创建一个修改步数的api。
通过”域名/misep?user=123456&password=123456&sep=10000”的形式就能修改步数。
实现过程
把运动步数修改-python - Imscad’s Blog (wechatid.github.io)的python代码复制,粘贴到程序上。
把源码中所有print语句都注释掉
修改main方法里的return语句,修改后如下:
1
2
3
4
5
6
7
8
9
10
11
12def main(self):
if not self.login():
# 登录失败时
return "100"
if not self.get_token():
# token获取失败时
return "401"
if not self.change_step():
# 步数修改失败时
return "404"
# 修改成功时
return "200"
安装fastapi 和uvicorn
1
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple fastapi
1
pip install -i https://pypi.tuna.tsinghua.edu.cn/simple uvicorn
创建一个 FastAPI 实例
1
app = FastAPI()
创建一个路由,定义 HTTP 方法和路径
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29async def process_misep(user, password, sep):
"""
华米运动
user: 账号
password: 密码
sep: 步数
return: 返回json数据
"""
if user == '' or password == '' or sep == '':
code = "400"
else:
user = '+86' + user
code = XiaoMi(user, password, sep).main()
response_msg = {
"100": "请检查账号信息",
"200": "提交成功!",
"400": "参数错误!",
"401": "提交失败!",
"404": "提交失败!"
}
response = {
"code": code,
"msg": response_msg[code],
"data": {
"user": user,
"step": sep
}
}
return response运行应用
1
2
3if __name__ == "__main__":
import uvicorn
uvicorn.run(app, host="127.0.0.1", port=8000)
运行截图
用python创建运动步数修改api
https://wechatid.github.io/2024/03/05/misep-for-FastApi/