前書き#
この記事全体は、私の Github のホームページからコピーされたもので、私が書いた最初の完全な機能を持つアプリケーションです。そのため、自分の最初の「プログラミングアプリケーション」カテゴリを埋めるために使用されました。
このアプリケーションを作成するインスピレーションについては、後の機能の説明を参照してください。今振り返ってみると、8 月の終わりに取り組んでいた自分自身が、24 時間のうち食事と睡眠以外はこのアプリケーションを作っていたことが、なぜか理由のない熱意を感じることができます。
このようなアプリケーションに対する私自身の技術的な興味や、さまざまなツールを使って遊ぶ情熱は、おそらく 2019 年から始まったもので、その時は冬の終わり、セミの鳴き声の盛夏、秋の始まりをつなげるものでした。
自分自身がこの貴重な「遊び心」を永遠に持ち続けることができることを願っています。
著者#
作者のホームページ:zhuozhiyongde(Arthals)
プロジェクトのアドレス:Alfred_HeWeather_Workflow
ソースコードの作者のホームページ:skefy(Leon)
ソースコードのプロジェクトのアドレス:alfred_workflow_weather
機能の説明#
災害警報、空気品質指数(AQI)、現在の天気、未来 3 日間の予報を検索します。
この Alfred Workflow は、和風天気(https://dev.heweather.com/)API を使用しており、教育や参考のためにのみ提供されており、商業目的には使用できません。
この Alfred Workflow のソースコードは、@skefy (Leon)/alfred_workflow_weatherから取得されています。
元の作者は、base_url を商業版 API に設定していたため、個人使用ではソースコードを変更する必要があり、不便でした。また、和風天気 API は v7 に更新されており、元の作者は更新していなかったため、私はソースコードを基にして、元のプロジェクトの 90%以上を再構築しました。
上記の変更以外にも、以下の変更を行いました:
-
災害警報のクエリを追加しました。複数の災害警報がある場合、重複を排除して結合された並列文字列が自動的に返されます。
-
AQIのクエリを追加しました。
-
エントリのレイアウトを変更し、各エントリに日の出と日の入り、降水量、体感温度などのさらに多くの情報を追加しました。また、@jason0x43/alfred-weatherのレイアウトを参考にして、Unicode アイコンを導入し、よりシンプルで直感的なものにしました。
-
環境変数に adm と location パラメータを追加し、正確な位置情報を取得するために都市を特定するために使用しました。また、自動的な位置情報の取得が廃止されたため、自動的な位置情報の機能を廃止しました。
-
キーワード+スペース+他の都市名
の形式で、他の都市の天気状況を取得することができます。クエリされた都市が中国国内にない場合、災害警報や AQI の情報は返されません。 -
多くの人が個人版 / 開発者版 API を使用していることを考慮し、base_url の
api
をdevapi
に変更しました。 -
エラーメッセージを追加し、最新の v7API のステータスコードに基づいて自動的にエラーメッセージを表示するようにしました。
-
元のアイコンを和風天気の新しいバージョンのアイコンに変更し、より美しくしました。
この点に関しては、@heweather / **WeatherIcon** から、和風天気がデザインした他のバージョンのアイコンをダウンロードし、./res/icon-heweather フォルダ内のアイコンを自分で置き換えることができます。
-
結果に
quicklookurl
パラメータを追加し、各結果を選択したまま⇧
または⌘
+Y
を押すことで、API のfxLink
をプレビューし、より詳細な情報を取得できるようにしました。 -
date_valid()
関数を追加して、インターフェースから取得した 3 日間の予報と現在の日付を比較するようにしました。これは、私がコードを書いているときに午前 5 時になったときに、このインターフェースがまだデータを更新していないことに気づいたためです。そのため、11 日の朝 5 時にリクエストを送信すると、10 日から 12 日の情報が返され、元の作者がこれを修正していないため、11 日から 13 日の情報が表示されるようになります。
デフォルトのキーワード: rt#
必要なパラメータ:#
-
api_key
:あなたの WEB API キー。一般ユーザーは 1 日につき最初の 1000 回のリクエストが無料で、開発者版は最初の 16700 回のリクエストが無料です。さらなる要件がある場合は、商業版またはハイパフォーマンス版 API を購入してください。必要に応じて、main.py の 65 行目の base_url でdevapi
をapi
に変更してください。開発者版 API では、将来の 24 時間の時間ごとの予報を取得できますが、私自身がまだ認証されていないため、この部分の開発は一時的に保留されています。
-
adm
:選択した都市の上位の省市範囲。例:北京市朝陽区と遼寧省朝陽市。 -
location
:具体的な地域の区県レベルの計画を選択してください。例:海淀区 / 漢陽県。
使用方法#
-
Alfred の Powerpack 機能を持っていることを確認してください。
-
このワークフローをインストールします。
-
和風天気に登録し、api_key を申請します。
-
登録手順:
a. 和風天気にアカウントを登録します。
b. 登録が完了したら、コンソールに移動します→アプリ管理→アプリの作成→無料開発版→任意のアプリ名を入力→キータイプを WEB API に設定→指示に従って登録を完了します。
c. API キーはコンソール - アプリ管理で確認できます。
-
api_key
環境パラメータを設定します。一度どこかにコピーしてから、タブや改行がコピーされていないかを確認することをお勧めします。そうでない場合、エラーが発生する可能性があります。
-
adm
、location
環境パラメータを設定します。日本語で入力することもできます。
プレビュー#
詳細な説明:
ライセンス#
このプロジェクトは、GNU General Public License v3.0の下で公開されています。
都市検索、空気検索、現在の天気、予報天気 API は、和風天気 ® から提供されています。
和風天気 ® は、和風天気株式会社の登録商標です。
天気アイコンは、@heweather/WeatherIcon by 和風天気から提供されています。
警告アイコンは、Freepik from www.flaticon.comから提供されています。