登录
原创

基于Python的免费天气预报接口查询

专栏聚合数据JUHE.CN
发布于 2020-11-25 阅读 640
  • Python
  • 聚合
原创

一、开通接口

天气预报接口服务使用的聚合数据提供的免费接口,每天可以100次免费调用。可以通过https://www.juhe.cn/docs/api/id/73注册及开通。

二、Python调用示例

#!/usr/bin/python
# -*- coding: utf-8 -*-

import urllib, urllib2, sys, json

reload(sys)
sys.setdefaultencoding('utf-8')

url = 'http://apis.juhe.cn/simpleWeather/query'

params = {
    "city": "北京",  # 查询天气的城市名称,如:北京、苏州、上海
    "key": "xxxxxxxx",  # 您申请的接口API接口请求Key
}
querys = urllib.urlencode(params)

request = urllib2.Request(url, data=querys)
response = urllib2.urlopen(request)
content = response.read()
if (content):
    try:
        result = json.loads(content)
        error_code = result['error_code']
        if (error_code == 0):
            temperature = result['result']['realtime']['temperature']
            humidity = result['result']['realtime']['humidity']
            info = result['result']['realtime']['info']
            wid = result['result']['realtime']['wid']
            direct = result['result']['realtime']['direct']
            power = result['result']['realtime']['power']
            aqi = result['result']['realtime']['aqi']
            print("温度:%s\n湿度:%s\n天气:%s\n天气标识:%s\n风向:%s\n风力:%s\n空气质量:%s" % (temperature, humidity, info, wid, direct, power, aqi))
        else:
            print("请求失败:%s %s" % (result['error_code'], result['reason']))
    except Exception as e:
        print("解析结果异常:%s" % e)
else:
    # 可能网络异常等问题,无法获取返回内容,请求异常
    print("请求异常")

三、返回结果

image.png

评论区

励志做一条安静的咸鱼,从此走上人生巅峰。

0

0

1