App下載

Python爬蟲之獲取心知天氣API實時天氣數(shù)據(jù)并彈窗提醒

猿友 2021-08-04 10:27:56 瀏覽數(shù) (3671)
反饋

天氣與我們的生活息息相關(guān),有很多事故就是對天氣的不重視導(dǎo)致了重大人員傷亡。作為個人我們也要對天氣有一定的關(guān)注意識而不是等著別人通知。今天我們就來介紹一個相關(guān)項目——使用python爬取天氣信息并用python實現(xiàn)彈窗提醒。希望這個小工具可以給各位小伙伴提供一定的幫助。

一、心知天氣API密鑰獲取

首先,訪問https://www.seniverse.com,進(jìn)行登錄或者注冊操作,然后在控制臺上創(chuàng)建一個免費版的項目,創(chuàng)建后,項目信息為:

獲取api

復(fù)制你的私鑰信息,來到官方文檔,發(fā)現(xiàn)API地址為:

請求方式介紹

在文檔中,可以看到查詢的API網(wǎng)址,接下來,把url中的參數(shù)key改為你的密鑰,訪問,返回的json數(shù)據(jù):

請求結(jié)果分析

二、編寫代碼

代碼如下:

import requests
from plyer import notification

"""
plyer是用來顯示彈窗的模塊
安裝命令:pip install plyer
"""

params = {
    "key": "你的API密鑰",
    "location": "ip",    # 查詢地點設(shè)置為訪問IP所在地
    "language": "zh-Hans",
    "unit": "c",
}

url = "https://api.seniverse.com/v3/weather/now.json"

# 獲取數(shù)據(jù)
r = requests.get(url, params=params)

# 解析數(shù)據(jù)
data = r.json()["results"]

address = data[0]["location"]['path']        # 地點
temperature = data[0]['now']["temperature"]  # 溫度
text = data[0]['now']["text"]			     # 天氣情況

# 彈窗顯示消息
message = address + " 當(dāng)前天氣:
" + 
          "溫度:" + temperature + "℃" + 
          "
天氣情況:" + text + 
          "
祝您心情愉悅!(^o^)"
          
"""
標(biāo)題為“當(dāng)前天氣”
顯示10秒鐘(timeout參數(shù))
"""
notification.notify(title="當(dāng)前天氣",
                    message=message,
                    timeout=10)

運行代碼,可以看到屏幕右下角出現(xiàn)了提示彈窗。

三、設(shè)置為自啟動項目

這里我以Windows系統(tǒng)為例,首先,在桌面創(chuàng)建一個bat文件,命名為weather.bat,輸入代碼:

python D:Python爬蟲demo.py

其中“D:Python爬蟲demo.py”是我的Python代碼路徑,你可以根據(jù)自己的進(jìn)行修改。

接下來,右擊“計算機”,選擇“管理”,再找到任務(wù)計劃程序庫,點擊右邊的“創(chuàng)建基本任務(wù)”,如圖:

設(shè)置自啟動

然后,為自啟動項目設(shè)置名稱和描述:

自啟動信息配置

點擊“下一步”,選擇觸發(fā)事件:

自啟動觸發(fā)事件

再次點擊“下一步”:

操作

接下來,再再點擊“下一步”,選擇之前在桌面創(chuàng)建的weather.bat文件,如圖:

啟動程序

點擊“下一步”,再點擊“完成”,可以看到自啟動項目中已經(jīng)出現(xiàn)了剛才的設(shè)置:

配置完成

接下來,每一次登錄這個賬號,都會自動啟動這個項目,如圖,筆者退出賬號后,再登錄,可以看到右下角出現(xiàn)了彈窗:

結(jié)果展示

到此這篇使用python爬取天氣信息并用python實現(xiàn)彈窗提醒的文章就介紹到這了,更多Python爬蟲學(xué)習(xí)內(nèi)容請搜索W3Cschool以前的文章或繼續(xù)瀏覽下面的相關(guān)文章。



0 人點贊