python结合API实现即时天气信息

python结合api实现即时天气信息

import urllib.requestimport urllib.parseimport json """ 利用“最美天气”抓取即时天气情况 http://www.zuimeitianqi.com/ """class ZuiMei(): def __init__(self):  self.url = 'http://www.zuimeitianqi.com/zuimei/queryWeather'  self.headers = {}  self.headers['User-Agent'] = 'Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/47.0.2526.80 Safari/537.36'  # 部分城市的id信息  self.cities = {}  self.cities['成都'] ='01012703'  self.cities['杭州'] = '01013401'  self.cities['深圳'] = '01010715'  self.cities['广州'] = '01010704'  self.cities['上海'] = '01012601'  self.cities['北京'] = '01010101'  # Form Data  self.data = {}  self.city = '北京'   def query(self,city='北京'):  if city not in self.cities:   print('暂时不支持当前城市')   return  self.city = city  data = urllib.parse.urlencode({'cityCode':self.cities[self.city]}).encode('utf-8')  req = urllib.request.Request(self.url,data,self.headers)  response = urllib.request.urlopen(req)   html = response.read().decode('utf-8')  # 解析json数据并打印结果  self.json_parse(html)  def json_parse(self,html):  target = json.loads(html)  high_temp = target['data'][0]['actual']['high']  low_temp = target['data'][0]['actual']['low']  current_temp = target['data'][0]['actual']['tmp']  today_wea = target['data'][0]['actual']['wea']  air_desc = target['data'][0]['actual']['desc']  # 上海 6~-2°C 现在温度 1°C 湿度:53 空气质量不好,注意防霾。   print('%s: %s~%s°C 现在温度 %s°C 湿度:%s %s'%(self.city,high_temp,low_temp,current_temp,today_wea,air_desc))if __name__ == '__main__': zuimei = ZuiMei() zuimei.query('广州')

登录后复制

效果演示:

python结合API实现即时天气信息

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/2535289.html

(0)
上一篇 2025年3月5日 22:28:39
下一篇 2025年2月23日 23:52:09

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 5种Python单例模式的实现方式

    本文为大家分享了python创建单例模式的5种常用方法,供大家参考,具体内容如下 所谓单例,是指一个类的实例从始至终只能被创建一次。方法1:如果想使得某个类从始至终最多只有一个实例,使用__new__方法会很简单。Python中类是通过__…

    编程技术 2025年3月5日
    200
  • Python聊天室实例程序分享

    上一篇 我们学习了简单的python tcp socket 编程,通过分别写服务端和客户端的代码了解基本的 python socket 编程模型。本文再通过一个例子来加强一下对 socket 编程的理解。 一、聊天室程序需求我们要实现的是简…

    2025年3月5日
    200
  • 黑科技 Python脚本帮你找出微信上删除你好友的人

    相信大家在微信上一定被上面的这段话刷过屏,群发消息应该算是微信上流传最广的找到删除好友的方法了。但群发消息不仅仅会把通讯录里面所有的好友骚扰一遍,而且你还得挨个删除好几百个聊天记录,回复大家的疑问和鄙视。作为一个互联网从业者,除了群发消息就…

    2025年3月5日
    200
  • 详解Python Socket网络编程

    socket 是进程间通信的一种方式,它与其他进程间通信的一个主要不同是:它能实现不同主机间的进程间通信,我们网络上各种各样的服务大多都是基于 socket 来完成通信的,例如我们每天浏览网页、qq 聊天、收发 email 等等。要解决网络…

    编程技术 2025年3月5日
    200
  • 星球大战与Python之间的那些事

    python与星球大战背后的工业光魔 提起Python语言,很多人会想起系统运维、Web开发等工作。很少有人会知道Python也能够用于电影视觉特效的制作,其中就包括了《星球大战》某些电影特效的制作。 星战之父乔治·卢卡斯于1975年创建了…

    2025年3月5日
    200
  • 菜鸟使用python实现正则检测密码合法性

    客户系统升级,要求用户密码符合一定的规则,即:包含大小写字母、数字、符号,长度不小于8,于是先用python写了个简单的测试程序: 在写解决方案前,列一下 python正则表达式中的特殊字符: ^          表示匹配的字符必须在最前…

    编程技术 2025年3月5日
    200
  • Python字符串特性及常用字符串方法的简单笔记

    单引号和双引号都能表示字符串。区别在于转义的时候。 如果懒得加转义字符,可以通过在字符串前面加上r。例如: print r’C:someame’ 登录后复制 通过在字符串里面添加反斜杠来不换行。 print “”” Usage: thing…

    编程技术 2025年3月5日
    200
  • Python实现控制台进度条功能

    本文实例讲述了python显示进度条的方法,是python程序设计中非常实用的技巧。分享给大家供大家参考。具体方法如下: 首先,进度条和一般的print区别在哪里呢? 答案就是print会输出一个,也就是换行符,这样光标移动到了下一行行首,…

    2025年3月5日
    200
  • python实现网站的模拟登录

    本文主要用python实现了对网站的模拟登录。通过自己构造post数据来用python实现登录过程。 当你要模拟登录一个网站时,首先要搞清楚网站的登录处理细节(发了什么样的数据,给谁发等…)。我是通过HTTPfox来抓取http…

    编程技术 2025年3月5日
    200
  • python访问mysql数据库的实现方法(2则示例)

    本文实例讲述了python访问mysql数据库的实现方法。分享给大家供大家参考,具体如下: 首先安装与Python版本匹配的MySQLdb 示例一 import MySQLdbconn=MySQLdb.connect(user=’root’…

    编程技术 2025年3月5日
    200

发表回复

登录后才能评论