年终活动
搜索
    上传资料 赚现金
    英语朗读宝

    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件

    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第1页
    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第2页
    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第3页
    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第4页
    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第5页
    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第6页
    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第7页
    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件第8页
    还剩30页未读, 继续阅读
    下载需要10学贝 1学贝=0.1元
    使用下载券免费下载
    加入资料篮
    立即下载

    粤高教版八年级下册信息技术第2单元第5课 查询天气 课件

    展开

    这是一份粤高教版八年级下册信息技术第2单元第5课 查询天气 课件,共38页。
    第 5 课 查询天气 ——requests 库和 json模块的应用广东高等教育出版 第八册下 新知导入图 2-5-1 天气预报新知讲解快门乐新知讲解交流 我们可以通过电视、手机、报纸、上网查询等途径查询天气;关注温度、湿度、风力、风向太阳照射强度等新知讲解一、分析问题 本课的任务是编写程序查询制定城市的天气情况。程序要解决的关键问题:一是如何到指定的天气网站获取数据;二是如何筛选出需要的天气数据,并按日常习惯表达出来。新知讲解 要解决以上问题,在程序中需要利用以下两个库(模块) (1)利用requests库向气象网站发送请求,获取天气数据 (2)利用json模块将获取的天气数据转换成便于Python处理的数据格式新知讲解新知讲解 上网了解有哪些网站提供API数据接口:实践百度百科:http://baike.baidu.com/api/openapi/BaikeLemmaCardApi?scope=103&format=json&appid=379020&bk_key=关键字&bk_length=600气象局:http://m.weather.com.cn/data/101010100.html爱奇艺:http://cache.video.iqiyi.com/jp/avlist/202861101/1/?callback=jsonp9新知讲解二、学习新知(一)requests库 pip install requests import requests 新知讲解 requests 库获取的数据对象包含多个属性,分别表示网页不同的信息。例如,向Python官网发送请求,并打印多项页面信息的代码如下:新知讲解#getpython.pyimport requests#使用requests库的get函数向指定网址发送请求,返回数据respresp= requests.get(‘http://www.python.org/’)Print(resp.text) #打印网页的页面内容#打印请求的返回状态,200表示连接成功,404表示失败print(resp.status_code)新知讲解实践新知讲解表2-5-1 反馈数据的部分属性说明新知讲解(二)json模块新知讲解 import json json莫快递包含在标准库中,导入该模块的命令如下:新知讲解 json模块包含多个函数,其中:(1)json.dumps(),表示将Python对象转换成JSON格式的数据(2)json.loads(),表示将JSON格式字符串形式数据转换成Python对象 例如,将JSON格式的数据a转换成Python对象存到b中的代码如下:b=json.loads(a)新知讲解三、设计算法根据前面分析,查询天气的算法思路如下:1、导入requests库以及json模块2、输入查询城市名city3、发送网络请求,获取天气数据response4、将response.txet转换成Python对象,并保存到weather中5、判断天气数据是否获取成功,成功则输出天气数据。否则输出“没有该城市的天气数据”新知讲解四、编写程序(一)获取天气数据根据前面的算法,获取天气数据的代码如下:#weather.pyimport rsquests,jsoncity=input('请输入要查询的城市')#将加上城市名的API接口网址存到url中\url='http://wthrcdn.etouch.cn/weather_mini?city='+city#发送网络请求,获取天气数据存到response中response=requests.get(url)#将JSON格式的数据转换成Python对象存到weather中weather=json.loads(response.text)新知讲解新知讲解探究 在程序weather.py最后加上一行代码‘print(weather)’。运行程序,输入你所在的城市(如图2-5-2所示),观察输出的天气数据提供了哪些信息?新知讲解图 2-5-2新知讲解(二)输出天气数据分析图2-5-2可知,从网络中获取的天气数据包含了多项内容,但这些数据难于直观看出天气的各项指标。我们可以逐项提取数据,再按整齐的格式显示出来,方便阅读。新知讲解weather[‘数据项名称’]表示weather中的某项数据,书写格式如下:1、weather[‘desc’]是查询结果标志,如果查询城市存在,则weather[‘desc’]的值为“OK”,否则为“invilad-citykey”。新知讲解2、 weather[‘data’]是详细的天气数据,里面包含4项数据依次为:(1)weather[‘data’][‘yesterday’]:昨日天气(2) weather[‘data’][‘forecast’][0]:今日的天气; weather[‘data’][‘forecast’][1]:明日的天气,如此类推(3) weather[‘data’][‘ganmao’]:感冒概率(4) weather[‘data’][‘wendu’]:当前温度新知讲解weather[‘data’][‘forecast’][0]包含有五个子项内容,它们分别表示哪些气象指标?‘data’:_________ ;’high’:___________ ;‘fengli’:________ ;’low’:_________ ;‘fengxiang’:____________观察日期高温风力低温风向新知讲解if weather [‘desc’]==‘OK’: #判断输入的城市是否存在 today=weather[‘data’][‘forecast’][0] #将当天的天气数据存到today中在程序weather.py基础上,删除最后一行代码‘print(weather)’,然后补充以下代码,观察输出了哪些天气数据。要输出更多天气数据,该如何修改程序?实践新知讲解print(city+’今日’+today[‘high’],today[‘low’],today[‘fengxiang’],today[‘type’]) print(‘当前温度:’+weather[‘data’][‘wendu’]+℃’) #输出当天的感冒概率else: print(‘没有该城市的天气数据’)新知讲解实践与创作 利用百度提供的查询手机号码归属地的API接口,编写程序查询手机号码的归属地,按如图2-5-3所示输出查询结果。API接口网址为:http://mobsec-dianhua.baidu,com/dianhua_api/open/location?tel=手机号码新知讲解检测与评估1、用于发送网络请求的库是( ) A.random B.matplotlib C.json D.requests拓展新知D2、将JSON格式的数据a转换成Python对象的语句是( ) A、b=json.load(a) B、b=json.loads(a) C、b=json.dump(a) D、b=json.dumps(a)拓展新知B3、以下说法错误的是( ) A、requests库属于扩展库,需要先安装才能使用 B、json模块属于扩展库,需要先安装才能使用 C、表达式“4+5”的结果是“45” D、json模块能将Python对象与JSON格式的数据进行相互转换拓展新知B4、请完善下列程序,使程序能够输出所获取的页面内容拓展新知#getbaidu.py__________________resp=requests.get('http://www.baidu.com/')resp.encoding='utf-8' #将反馈内容的编码格式转换为utf-8_________________________拓展新知import requestsprint(resp.encoding) 5、完成表2-5-2的学习评估,并将评估等级填写到“我的成长记录袋”中。拓展新知拓展新知表2-5-2 学习评估表课堂总结一、requests库和json模块的运用二、提取weather中的某项数据 weather['数据项名称']板书设计一、分析问题二、学习新知 (一)requests库 (二) json库三、设计算法四、编写程序 (一)获取天气数据 (二)输出天气数据

    欢迎来到教习网
    • 900万优选资源,让备课更轻松
    • 600万优选试题,支持自由组卷
    • 高质量可编辑,日均更新2000+
    • 百万教师选择,专业更值得信赖
    微信扫码注册
    qrcode
    二维码已过期
    刷新

    微信扫码,快速注册

    手机号注册
    手机号码

    手机号格式错误

    手机验证码 获取验证码

    手机验证码已经成功发送,5分钟内有效

    设置密码

    6-20个字符,数字、字母或符号

    注册即视为同意教习网「注册协议」「隐私条款」
    QQ注册
    手机号注册
    微信注册

    注册成功

    返回
    顶部
    Baidu
    map