欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

利用Python制作一個(gè)簡單的天氣播報(bào)系統(tǒng)

 更新時(shí)間:2022年05月12日 11:29:13   作者:五包辣條!  
最近天氣的多變,好幾次出門半路天氣轉(zhuǎn)變。本文將利用python整個(gè)天氣爬蟲來獲取天氣情況。這樣也好可以進(jìn)行一個(gè)提前預(yù)防,感興趣的可以動(dòng)手試一試

前言

大家好,我是辣條

相信大家都能感覺到最近天氣的多變,好幾次出門半路天氣轉(zhuǎn)變。辣條也深受其擾,直接給我整感冒,就差被隔離起來了,既然天氣我沒法做主,那不如用python整個(gè)天氣爬蟲來獲取天氣情況。這樣也好可以進(jìn)行一個(gè)提前預(yù)防

工具

python3.7

pycharm

pyttsx3:語音播報(bào)庫

天氣數(shù)據(jù)來源

找尋一個(gè)天氣網(wǎng)站

比如說我們要查詢某地的天氣,在輸入地名后就能看到結(jié)果。

我們可以看到網(wǎng)站的url會(huì)有變化:

每個(gè)城市的天氣信息url就是在網(wǎng)站后面加上城市拼音,既然如此可以使用函數(shù)形參來解決城市輸入問題。

代碼實(shí)現(xiàn)

# 獲取天氣的方法
def get_weather(city):
    # 天氣的網(wǎng)站網(wǎng)址  字符串
    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'
    }

    # 發(fā)起網(wǎng)絡(luò)請求并獲取網(wǎng)頁代碼
    website = requests.get(url=url, headers=headers)

    data = etree.HTML(website.text)     # 數(shù)據(jù)預(yù)處理
	#xpath解析頁面天氣數(shù)據(jù)
    weather_list = data.xpath('//dl[@class="weather_info"]//text()')


    weather_text = '歡迎使用天氣播報(bào)助手,以下是你想要了解的城市天氣:\n'

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

    print(weather_text)
    return weather_text

這樣就通過爬蟲就獲取到了每個(gè)城市的天氣數(shù)據(jù),再通過pyttsx3構(gòu)建出語音對象實(shí)例,將天氣文本放進(jìn)去運(yùn)行就可以了。

if __name__ == '__main__':
    city = input('請輸入您的城市,例如長沙:changsha-->').strip()
    weather_info = get_weather(city)        # weather_info來獲取抓取到的天氣文字
    weather = pyttsx3.init()            # 初始化說話的對象
    weather.say(weather_info)           # 設(shè)置說話內(nèi)容
    weather.runAndWait()                # 開始執(zhí)行說話的操作

總結(jié)

這才是物理階層的未雨綢繆,貫穿用魔法打敗魔法的原理~ 哈哈哈

到此這篇關(guān)于利用Python制作一個(gè)簡單的天氣播報(bào)系統(tǒng)的文章就介紹到這了,更多相關(guān)Python天氣播報(bào)系統(tǒng)內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評論