案例篇:Python天气播报系统,这才是未雨绸缪

简介: 案例篇:Python天气播报系统,这才是未雨绸缪

前言
​ 大家好,我是辣条

相信大家都能感觉到最近天气的多变,好几次出门半路天气转变。辣条也深受其扰,直接给我整感冒,就差被隔离起来了,既然天气我没法做主,那不如用python整个天气爬虫来获取天气情况。这样也好可以进行一个提前预防

目录
前言
工具
天气数据来源
代码实现
总结
工具
​ python3.7

​ pycharm

​ pyttsx3:语音播报库

天气数据来源
​ 找寻一个天气网站

比如说我们要查询某地的天气,在输入地名后就能看到结果。

我们可以看到网站的url会有变化:

每个城市的天气信息url就是在网站后面加上城市拼音,既然如此可以使用函数形参来解决城市输入问题。

代码实现

获取天气的方法

def get_weather(city):

# 天气的网站网址  字符串
url = 'https://www.tianqi.com/' + city + '/'

# 伪装浏览器的马甲
headers = {
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.116 Safari/537.36 Edg/83.0.478.58'
}

# 发起网络请求并获取网页代码
website = requests.get(url=url, headers=headers)

data = etree.HTML(website.text)     # 数据预处理
#xpath解析页面天气数据
weather_list = data.xpath('//dl[@class="weather_info"]//text()')


weather_text = '欢迎使用天气播报助手,以下是你想要了解的城市天气:\n'

for text in weather_list:
    weather_text += text
    if weather_text.find('[切换城市]'):
        weather_text = weather_text.strip('[切换城市]')

print(weather_text)
return weather_text

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
这样就通过爬虫就获取到了每个城市的天气数据,再通过pyttsx3构建出语音对象实例,将天气文本放进去运行就可以了。

if name == '__main__':

city = input('请输入您的城市,例如长沙:changsha-->').strip()
weather_info = get_weather(city)        # weather_info来获取抓取到的天气文字
weather = pyttsx3.init()            # 初始化说话的对象
weather.say(weather_info)           # 设置说话内容
weather.runAndWait()                # 开始执行说话的操作

1
2
3
4
5
6
总结
这才是物理阶层的未雨绸缪,贯穿用魔法打败魔法的原理~ 哈哈哈

]

目录
相关文章
|
5天前
|
机器学习/深度学习 数据采集 供应链
使用Python实现智能食品安全追溯系统的深度学习模型
使用Python实现智能食品安全追溯系统的深度学习模型
24 4
|
2月前
|
机器学习/深度学习 传感器 存储
使用 Python 实现智能地震预警系统
使用 Python 实现智能地震预警系统
121 61
|
20天前
|
弹性计算 数据管理 数据库
从零开始构建员工管理系统:Python与SQLite3的完美结合
本文介绍如何使用Python和Tkinter构建一个图形界面的员工管理系统(EMS)。系统包括数据库设计、核心功能实现和图形用户界面创建。主要功能有查询、添加、删除员工信息及统计员工数量。通过本文,你将学会如何结合SQLite数据库进行数据管理,并使用Tkinter创建友好的用户界面。
从零开始构建员工管理系统:Python与SQLite3的完美结合
|
13天前
|
机器学习/深度学习 人工智能 算法
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
垃圾识别分类系统。本系统采用Python作为主要编程语言,通过收集了5种常见的垃圾数据集('塑料', '玻璃', '纸张', '纸板', '金属'),然后基于TensorFlow搭建卷积神经网络算法模型,通过对图像数据集进行多轮迭代训练,最后得到一个识别精度较高的模型文件。然后使用Django搭建Web网页端可视化操作界面,实现用户在网页端上传一张垃圾图片识别其名称。
44 0
基于Python深度学习的【垃圾识别系统】实现~TensorFlow+人工智能+算法网络
|
13天前
|
机器学习/深度学习 人工智能 算法
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
蔬菜识别系统,本系统使用Python作为主要编程语言,通过收集了8种常见的蔬菜图像数据集('土豆', '大白菜', '大葱', '莲藕', '菠菜', '西红柿', '韭菜', '黄瓜'),然后基于TensorFlow搭建卷积神经网络算法模型,通过多轮迭代训练最后得到一个识别精度较高的模型文件。在使用Django开发web网页端操作界面,实现用户上传一张蔬菜图片识别其名称。
54 0
基于深度学习的【蔬菜识别】系统实现~Python+人工智能+TensorFlow+算法模型
|
24天前
|
机器学习/深度学习 数据采集 存储
使用Python实现智能农业灌溉系统的深度学习模型
使用Python实现智能农业灌溉系统的深度学习模型
119 6
|
28天前
|
机器学习/深度学习 数据采集 算法框架/工具
使用Python实现智能生态系统监测与保护的深度学习模型
使用Python实现智能生态系统监测与保护的深度学习模型
81 4
|
2月前
|
机器学习/深度学习 数据采集 传感器
使用Python实现深度学习模型:智能极端天气事件预测
使用Python实现深度学习模型:智能极端天气事件预测
95 3
|
2月前
|
机器学习/深度学习 数据可视化 TensorFlow
使用Python实现深度学习模型:智能天气预测与气候分析
使用Python实现深度学习模型:智能天气预测与气候分析
381 3
|
2月前
|
Python
Python实现系统基础信息
Python实现系统基础信息
32 0
下一篇
无影云桌面