今天会下雨吗?教你使用 Python 预测天气

天气是大气中每天发生的各种事件混合体。世界不同的地区,天气也多种多样。本文将使用几行 Python代码, 带你学习预测天气的千变万化。

什么是wttr?

使用Python预测天气的第一步,我们要了解wttr是什么。wttr.in是一个面向控制台的天气预报服务,它支持各种信息表示方法,如面向终端的ANSI序列(用于控制台HTTP客户端(curl、httpie或wget))、HTML(用于web浏览器)或PNG(用于图形查看器)。
wttr.in使用wego进行可视化和各种数据源的天气预报信息。

使用 Requests 模块

第二步要了解Requests模块,Requests是一个简单而优雅的HTTP库。它让你容易地发送HTTP/1.1请求。并且Requests模块已正式支持Python 2.7 & 3.5+。
在熟悉了Requests 模块的基本知识和wttr的基本知识后,我们可以进行编码部分。

编写代码

可以在GitHub Repository 中 https://github.com/ayushi7rawat/Youtube-Projects/tree/master/Weather Forecast?ref=hackernoon.com 找到所有代码。
代码示例:
image-20210623112839558
为了访问Python库,需要将其安装到Python环境中。

  1. pip install requests

接下来我们需要使用下面的命令将包导入到Python脚本中。

  1. import requests

现在我们已经使用命令 import requests 导入了库。
下一步需要用户输入他/她希望获取天气详细信息的city名称。

  1. city = input('input the city name')
  2. print(city)

如果你只需预测自己所在城市的天气,也可以给city一个确定的值。

  1. city = 'bhopal'

现在,让我们显示一条简单的消息。

  1. print('Displaying Weather report for: ' + city)
  2. #output:
  3. Displaying Weather report for: bhopal

让我们来定义URL,我们将使用这种格式来传递city作为参数。

  1. url = 'https://wttr.in/{}'.format(city)

是时候使用 requests 模块了。

  1. res = requests.get(url)

我们的结果数据存储在res中。我们使用文本方法提取所需的天气细节,并显示结果。

  1. print(res.text)

这是天气预报的样子:
image
到这里,天气预报功能就编写好了,是不是很简单呢?