天气预报代码(简单4行Python代码获取)

访客4年前黑客文章291

天气预报代码(简单4行Python代码获取)


使用Python获取天气预报,想想是件很简单的事情。无非是发送一个HTTP请求,再解析请求返回的结果。当你真的使用Python程序去获取天气预报以后,会发现,有不少坑在等着你。这里简单记录一下我遇到的坑,供大家参考。

这是小编整理的python学习资料,关注,转发,私信小编“01”即可获取拉!


如何获取

使用Python获取天气有两种不同的 *** ,一种是像平时爬虫一样,获取天气预报网站的HTML页面,再使用XPath或BeautifulSoup解析HTML页面的内容。这是比较传统的爬虫方式。此外,还有另外一种比较合适的 *** ——通过天气预报网站提供的API。通过API,直接获取结构化的数据,省去了解析HTML的烦恼。

使用API

搜索"天气预报 API"这两个关键字,会有很多相关的内容,例如,这个

https://wwwzhihu.com/question/20575288

答案下就列出了不少提供百思特网API访问天气预报的网站。

然而,大部分都已经不可用了。部分可用的需要收费或者需要注册,都比较麻烦。有没有比较省事的方案呢?找来找去,我找到了中国天气网的API。无需注册直接可用,返回json格式的数据,无需使用BeautifulSoup或XPath解析,非常的方便。赞!

例如,可以直接访问下面的地址,在浏览器中查看中国天气网返回的json数据:

http://www.w百思特网eather.com.cn/data/sk/101020100.html

有了API处理起来就很简单了,直接使用Python世界最知名的requests访问API即可。

安装requests:

pip install requests


检查安装是否成功:

python -c "import requests"


使用ipython测试:


requests库包含一个名为json的 *** ,当请求的地址返回的是json格式的数据时,直接使用该 *** 访问即可,无需使用标准库的json库。

解决乱码

如果大家刚才在浏览器中打开了我给的地址,会发现,输出结果是乱码的。百思特网如下所示:


我们可以在ipython中,查看数据编码:


我们知道,乱码是因为解码的字符集与编码的字符集不一样,所以才会有乱码。那么,我们怎么知道数据的编码字符集呢?这个时候就靠猜了。众所周知,utf-8因为各种优点(如果大家感兴趣,我可以写一篇字符集编码的文章),是使用最广泛的字符集编码,因此,我们可以尝试使用utf-8进行解码。如下所示:


可以看到,使用utf-8解码以后,可以正确的显示数据。也就是说,中国天气网返回给我们的数据,应该是utf-8格式的。那么,为什么会乱码呢?这可能是中国天气网的工程师水平不行,也可能是故意不想让我们使用,谁知道呢。

我们已经知道了正确的编码,接下来,只要将相应的数据,使用utf-8格式解码即可。requests库本身提供了这样的功能,如下所示:


获取不同城市的天气预报

前面的例子,获取的是上海的天气预报。如果想要使用中国天气网的API,获取其他城市的天气预报呢?中国天气网并没有提供相应的接口,我们只能自己想办法。

在我们测试的URL中,101020100是城市的代码,我们只需要找到其他城市的代码,将101020100替换成相应的代码即可。查找 *** 是,在中国天气网的首页,搜索城市的名称,地址栏中会显示相应城市的代码。如下所示:


4行Python代码获取天气预报

使用Python获取天气预报的例子中,我们的主要任务在于找到相应的API,解决字符集编码问题。当这些问题解决以后,直接使用requests库获取天气预报即可。下面是获取所在城市天气预报的4行Python代码:


相关文章

最厉害的黑客能干什么(黑客都能干什么)-手机如何进入黑客系统

最厉害的黑客能干什么(黑客都能干什么)-手机如何进入黑客系统

最厉害的黑客能干什么(黑客都能干什么)(tiechemo.com)一直致力于黑客(HACK)技术、黑客QQ群、信息安全、web安全、渗透运维、黑客工具、找黑客、黑客联系方式、24小时在线网络黑客、黑客...

在营销系统中,会员不需要等级

在营销系统中,会员不需要等级

编辑导读:这年初,谁还没开几个会员了?许多平台,不只有针对会员的专属处事,尚有会员品级的评分和界定。会员品级体系作为最常见的营销成果之一,跟着营销数字化的成长,逐步揭示出了它的缺陷。本文将对此举办四方...

鹿晗让关晓彤怀孕了是真的吗 关晓彤怀孕有哪些证据

鹿晗让关晓彤怀孕了是真的吗 关晓彤怀孕有哪些证据

王源让关晓彤怀孕了是真是假 关晓彤怀孕有什么直接证据。豆瓣八组全新料,今日王源发布自身的感情和刚刚古力娜扎微信朋友圈的甜蜜的暴击,是由于关晓彤怀孕了,关晓彤爸爸那麼早已出去表态发言是否由于怀了孕不愿...

今夜我还在福州男士spa会所这个服务项目超赞,新项目层次感非常好

今夜我还在福州男士spa会所这个服务项目超赞,新项目层次感非常好 水疗spa不但合适女士,也合适男士。从中医学的视角看来,做SPA对男生而言是有利的,能够释放压力她们的精神实质,清除身体疲乏。在床...

找黑客淘宝(黑客接单qq号)

淘宝怎么找黑客 1、怎么找黑客·防火墙系统,淘宝接单qq号都不知道怎么做,作黑客接单为盗版的Win10用户,网络可以结识更多的朋友,黑客接单44.。不存在漏洞。Run项,窃取公司商业秘密,Revolu...

金钰麻辣烫加盟要求有哪些?金钰麻辣烫告诉你

金钰麻辣烫加盟要求有哪些?金钰麻辣烫告诉你

或许因为人类的不知满足的心理,又或者是创业者们攀比的心理,大家都会想要拥有更多的钱来充实自己的生活,大家都想着拥有不是一般人拥有的生活,想着用更多的钱财提高自己生活的质量来达到让自己可以舒舒服服的去享...