使用這個開源工具獲取本地天氣預報
在我們的 20 個使用開源提升生產(chǎn)力的系列的第十三篇文章中使用 wego 來了解出門前你是否要需要外套、雨傘或者防曬霜。
去年,我在 19 天里給你介紹了 19 個新(對你而言)的生產(chǎn)力工具。今年,我換了一種方式:使用你在使用或者還沒使用的工具,構(gòu)建一個使你可以在新一年更加高效的環(huán)境。
使用 wego 了解天氣
過去十年我對我的職業(yè)最滿意的地方之一是大多數(shù)時候是遠程工作。盡管現(xiàn)實情況是我很多時候是在家里辦公,但我可以在世界上任何地方工作。缺點是,離家時我會根據(jù)天氣做出一些決定。在我居住的地方,“晴朗”可以表示從“酷熱”、“低于零度”到“一小時內(nèi)會小雨”。能夠了解實際情況和快速預測非常有用。
Wego 是用 Go 編寫的程序,可以獲取并顯示你的當?shù)靥鞖?。如果你愿意,它甚至可以用閃亮的 ASCII 藝術(shù)效果進行渲染。
要安裝 wego
,你需要確保在系統(tǒng)上安裝了Go。之后,你可以使用 go get
命令獲取最新版本。你可能還想將 ~/go/bin
目錄添加到路徑中:
go get -u github.com/schachmat/wego
export PATH=~/go/bin:$PATH
wego
首次運行時,wego
會報告缺失 API 密鑰?,F(xiàn)在你需要決定一個后端。默認后端是 Forecast.io,它是 Dark Sky的一部分。wego
還支持 OpenWeatherMap 和 WorldWeatherOnline。我更喜歡 OpenWeatherMap,因此我將在此向你展示如何設置。
你需要在 OpenWeatherMap 中注冊 API 密鑰。注冊是免費的,盡管免費的 API 密鑰限制了一天可以查詢的數(shù)量,但這對于普通用戶來說應該沒問題。得到 API 密鑰后,將它放到 ~/.wegorc
文件中?,F(xiàn)在可以填寫你的位置、語言以及使用公制、英制(英國/美國)還是國際單位制(SI)。OpenWeatherMap 可通過名稱、郵政編碼、坐標和 ID 確定位置,這是我喜歡它的原因之一。
# wego configuration for OEM
aat-coords=false
aat-monochrome=false
backend=openweathermap
days=3
forecast-lang=en
frontend=ascii-art-table
jsn-no-indent=false
location=Pittsboro
owm-api-key=XXXXXXXXXXXXXXXXXXXXX
owm-debug=false
owm-lang=en
units=imperial
現(xiàn)在,在命令行運行 wego
將顯示接下來三天的當?shù)靥鞖狻?/p>
wego
還可以輸出 JSON 以便程序使用,還可顯示 emoji。你可以使用 -f
參數(shù)或在 .wegorc
文件中指定前端。
如果你想在每次打開 shell 或登錄主機時查看天氣,只需將 wego 添加到 ~/.bashrc
(我這里是 ~/.zshrc
)即可。
wttr.in 項目是 wego 上的基于 Web 的封裝。它提供了一些其他顯示選項,并且可以在同名網(wǎng)站上看到。關于 wttr.in 的一件很酷的事情是,你可以使用 curl
獲取一行天氣信息。我有一個名為 get_wttr
的 shell 函數(shù),用于獲取當前簡化的預報信息。
get_wttr() {
curl -s "wttr.in/Pittsboro?format=3"
}
現(xiàn)在,在我離開家之前,我就可以通過命令行快速簡單地獲取我是否需要外套、雨傘或者防曬霜了。