python天气语音播报

今天的小项目是一个天气播报,项目效果是点击运行就读出今天的天气。

那么我们可以分两步走,第一个:先爬取到今天的天天气内容,第二步:电脑读出今天的天气内容

想要电脑读出内容,就用到一个第三方库叫pyttsx3 ,安装和其他第三方库一样,在cmd里面输入

pip install pyttsx3 

第一步:爬取天气,选择的是:https://tianqi.2345.com/

import pyttsx3
import requests
from lxml import etree
import time

if __name__ == '__main__':
    url_ = 'https://tianqi.2345.com/'
    headers_ = {
        'User-Agent': 'Mozilla/5.0 (Windows NT 6.1; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/94.0.4606.54 Safari/537.36',
        'Cookie': 'BAIDU_SSP_lcr=https://www.baidu.com/link?url=2_kcGFULpmOGesd7t4XR05Uk5SP4mO4jG-fgBdkwFbebqlXoVbysDnuM7sr0QuyL&wd=&eqid=fe17baab0006be82000000066155522a; Hm_lvt_a3f2879f6b3620a363bec646b7a8bcdd=1632973860,1632973883,1632981759,1632981769; Hm_lpvt_a3f2879f6b3620a363bec646b7a8bcdd=1632981769',
        'Referer': 'https://www.baidu.com/link?url=2_kcGFULpmOGesd7t4XR05Uk5SP4mO4jG-fgBdkwFbebqlXoVbysDnuM7sr0QuyL&wd=&eqid=fe17baab0006be82000000066155522a'
    }
    response_ = requests.get(url_, headers=headers_)
    data_ = response_.text
    # print(data_)
    data_obj = etree.HTML(data_)
    n = data_obj.xpath('//div[@id="J_bannerList"]/div//text()')
    # print(n)
    list_c = []
#将获取的数据放入一个列表(这里有几天的数据)
    for i in range(len(n)):
        k = n[i].replace(" ", "")
        j = k.replace("\n", "")

        list_c.append(j)
        # print(j)

    # print(list_c)
    a = list(filter(None, list_c))
    list_a = a[4:8]
    print(list_a)
#提取出今天的数据
for i in range(len(list_a)):
    if i == 1:
        list2 = []
        # list_a[i] = ['今天是']
        list_a[i] = list_a[i].split('/')
        # print(list_a[i])
        a = list_a[i][0] + "月"
        # print(a)
        b = list_a[i][1] + "日"
        # print(b)
        list_a[i][0] = a
        list_a[i][1] = b
#将今天的数据进行拼接
b = str(str(list_a[0]) + '是' + str(list_a[1]) + str(list_a[2]) + ',' + str(list_a[3]) + ',' + '加油打工人')
print(b)

这就有我们想要的内容了。接下来就是语言功能。

a = pyttsx3.init()
a.say(b)
a.runAndWait()

就三段代码。两个加起来就可以了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

胖子是个潜力股

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值