Python3定時短信獲得天氣

getWeather

腳本鏈接:https://github.com/Mrlshadows/getWeather

Python環境為 python3

兩個API

註冊后即可使用免費版本的服務

  • 心知天氣

https://www.seniverse.com/

  • twilio

https://www.twilio.com/

twilio記得要在控制台獲得一個手機號才能設置相應的信息。

安裝twilio

終端執行如下指令:

  1. pip3 install twilio

運行腳本

編輯腳本更改將值對應修改:

  1. # 設置心知天氣的apikey
  2. apikey = "--此處為私鑰--"
  3. # 設置twilio賬戶信息
  4. twilio_account_sid = "--twilio_account_sid--"
  5. twilio_auth_token = "--twilio_auth_token--"
  6. # 發送短信的指令
  7. client.messages.create(to=phone, from_="--twilio_phone--", body=message)
  8. # 編輯接收人的信息,國內電話記得加 +86
  9. name = "--你的名字--"
  10. phone = "--你的手機號--"
  11. location = "shanghai"

修改后終端運行該腳本:

  1. python3 get_weather.py

運行成功后片刻你的手機便收到短信了。

定時執行腳本

MacOS和linux都可以使用crontab達到此效果。

終端運行指令:

  1. crontab -e

此時進入了vim編輯器的界面。

舉個例子,我想要每天早上6點鐘收到天氣的消息,編輯器內輸入內容為:

  1. # 第一列為執行腳本的分鐘數
  2. # 第二列為執行腳本的小時數
  3. # 第三列為執行腳本的日,* 為通配符,表示全部
  4. # 第四列為執行腳本的月,* 為通配符,表示全部
  5. # 第五列為執行腳本的星期,* 為通配符,表示全部
  6. # 第六列為到達條件后要執行的命令
  7. 0 6 * * * python3 腳本的路徑/get_weather.py

保存後退出,提示terminal要獲得全部權限,是 terminal显示已經安裝

檢驗定時器是否添加成功

終端輸入如下指令:

  1. crontab -l

若是終端輸出显示了你編輯的命令即添加成功

提示

給非註冊twilio的手機號發短信

需要進入控制台設置。

點擊網頁右邊藍色的鏈接 verified numbers。 添加相應的手機號 手機號語音認證或手機驗證碼認證

睡眠狀態后crontab失效

睡眠狀態后crontab不再定時執行腳本。

總結

寫代碼也可以進行資源整合,實現相應的功能,達到預期的目標即可。

代碼改變世界。

參考

https://zhuanlan.zhihu.com/p/22273281

https://www.linuxidc.com/Linux/2014-01/95612.htm

点赞

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *