这是一个使用Python语言编写的垃圾分类识别程序。它通过用户输入的垃圾名称,调用GMIT API接口,识别并返回该垃圾所属的类型。
一、首先
程序定义了一个函数set_url(kw)
,它接受一个关键字参数kw
,即用户输入的垃圾名称。函数内部设定了API的URL和请求参数,其中参数format
设定为json
,表示返回的结果格式为json,kw
为用户输入的垃圾名称。
二、get_type(url, params)
函数
它负责发送GET请求到指定的URL,并携带参数。在获取到服务器的响应后,它将响应内容的编码设为'utf-8',然后尝试将响应内容解析为json格式。如果解析成功,它会检查返回的状态码是否为200,状态码200表示请求成功。如果请求成功,它会打印出垃圾的名称和类型。如果请求失败或解析结果出现异常,它会打印出相应的错误信息。
三、main()
函数
是程序的入口点,它首先提示用户输入垃圾名称,然后调用set_url(el)
函数设置URL和参数,并将结果传递给get_type()
函数。
四、最后
程序通过if __name__ == '__main__': main()
语句判断当前模块是否是主程序入口,如果是则执行main()
函数。
五、源代码
import requests
import json
def set_url(kw):
url = 'https://api.gmit.vip/Api/AiLaji'
params = {
'format': 'json',
'kw': kw
}
return url, params
def get_type(url, params):
res = requests.get(url, params)
res.encoding = 'utf-8'
if res:
try:
resp = json.loads(res.content)
# print(resp['code'])
# 状态码 200 表示请求成功
if resp['code'] == 200:
print("请求成功")
print(f"{resp['data']['name']}属于{resp['data']['typeName']}")
else:
print("请求失败")
except Exception as e:
print("解析结果异常:%s" % e)
else:
# 无法获取返回内容,请求异常
print("请求异常")
def main():
el = input("请输入垃圾名称:")
set_url(el)
get_type(*set_url(el))
if __name__ == '__main__':
main()
六、总结
这个Python程序使用GMIT的API实现了垃圾分类识别的功能。用户输入垃圾名称后,程序会通过API请求返回该垃圾的类型。这个程序是一个简单的API调用示例,展示了如何使用Python的requests库发送HTTP请求和处理返回结果。