Skip to content

PacificOcean/Weather_data

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

                                                                    2018.04.11

                   気温データ取得コマンドの使い方
                   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄

1. ツール概要
 ̄ ̄ ̄ ̄ ̄ ̄ ̄
  本ツールは、以下の機能を提供します。
  - 気象庁のウェブサイトから過去の気温データを収集する
  - 気象庁のウェブサイトで過去の気象データを公開している気象台・観測所の一覧を
    作成・更新する

2. インストール
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 2.1. 動作環境
  ̄ ̄ ̄ ̄ ̄ ̄ ̄
  - OS:CentOS 7
  - Pythonバージョン:3.5.2、3.6.2(動作確認済)
  - Pythonモジュール:Anacondaでインストールされるモジュール

 2.2. モジュール構成
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  - README.txt:本ドキュメント
  - area_data_temp_valid.pickle:内部ファイル(気象台・観測所の一覧)
  - make_area_data.py:area_data_temp_valid.pickleを生成・更新するコマンド
  - weather_get.py:気温データを取得

 2.3. インストール方法
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  上記モジュールを同一のディレクトリ配下に配置します。


3. 使用方法
 ̄ ̄ ̄ ̄ ̄ ̄
  以下の流れで、気象データを取得します。

  1. 気象台または観測所(以下、気象台)の一覧を生成する。
     ※気象台が追加・変更となることがあるため、数ヶ月に1回程度、更新
       することが望ましい。
  2. 最寄の気象台の気温データを取得する。

 3.1. 気象台の一覧生成
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  インストールディレクトリに移動して、以下のコマンドを実行します。

    # python make_area_data.py <out_dir>

   out_dir:出力先ディレクトリを指定

    出力ファイル名:area_data_temp_valid.pickle
  
  指定した出力先ディレクトリにファイルが既に存在する場合は、上書きします。

  任意のディレクトリから、コマンドのフルパスを指定して、実行することもできます。

 3.2. 気温データの取得
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  インストールディレクトリに移動して、以下のコマンドを実行します。

    # python weather_get.py <post_code> 4,2 <out_dir> <start_date> <end_date> 2
                                        ※1                                   ※2
   post_code:郵便番号(数字7桁)を指定
    out_dir:出力先ディレクトリを指定
    start_date:気温データの取得期間の開始日(YYYYMMDD)を指定
    end_date:気温データの取得期間の終了日(YYYYMMDD)を指定

    ※1:気温を表す列番号を指定。「4,2」で固定
         2018年3月時点で、気象台の場合は4列目、その他観測所の場合は2列目。
         気象庁側で仕様変更した場合にも対応できるように、引数として外だし。
    ※2:データ読み込み開始行番号を指定。「2」で固定
         2018年3月時点で、2行目。※1と同様の理由で、引数として外だし。

  指定した出力先ディレクトリに、同一気象台、同一期間についてのファイルが既に
  存在する場合は、処理を終了します。(気象庁サーバのアクセス負荷軽減のため)

  任意のディレクトリから、コマンドのフルパスを指定して、実行することもできます。


4. コマンドI/F仕様
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
 4.1. make_area_data.py
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  4.1.1. 入力ファイルの条件
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   入力ファイルなし

  4.1.2. 出力ファイルの形式
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  - 気象台の情報をpickle化したファイル
    weather_get.pyで最寄の気象台を探索する際に使用する情報(緯度経度など)を含む
  - ファイル名は「area_data_temp_valid.pickle」で生成

  4.1.3. コマンド引数
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  3. 使用方法を参照

  4.1.4. 復帰値
   ̄ ̄ ̄ ̄ ̄ ̄ ̄
  正常終了:0
  異常終了:0以外

  4.1.5. ログの管理
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  コマンド側ではログファイルは作成しない

  4.1.6. メッセージの出力先
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  標準出力または、標準エラー出力に出力する

 4.2. weather_get.py
  ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  4.2.1. 入力ファイルの条件
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
   入力ファイルなし

  4.2.2. 出力ファイルの形式
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  - カラム名とデータ部分のn行2列のCSV形式で出力
  - インデックスは無し
  - カラム名は「日時」と取得した気象データの列番号(4か2)
  - 改行コードはLFで出力する
  - ファイル名は「都道府県名_都市名_開始日_終了日.csv」で生成

  出力例:
  -----------------------
  日時,4
  2016-01-01 00:00:00,4.3
  2016-01-01 01:00:00,4.0
  2016-01-01 02:00:00,3.5
  2016-01-01 03:00:00,3.3
  …
  -----------------------

  4.2.3. コマンド引数
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  3. 使用方法を参照

  4.2.4. 復帰値
   ̄ ̄ ̄ ̄ ̄ ̄
  正常終了:0
  異常終了:0以外

  4.2.5. ログの管理
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  コマンド側ではログファイルは作成しない
  
  4.2.6. メッセージの出力先
   ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄
  標準出力または、標準エラー出力に出力する

   -------------------------------------------------------------------------
  【参考】
   - 郵便番号から、最寄の気象台の場所をまず知りたい場合は、本コマンドを以下の
     様に、「check」オプションを付けて実行することで、確認できます。

     # python weather_get.py <post_code> check <out_dir>

     出力ファイルは、「郵便番号.csv」で都道府県名、都市名が記載されています。

   - allオプションを使用することで、最寄りの気象台から取得可能な全ての項目
     を取得することができます。

    # python weather_get.py <post_code> all <out_dir> <start_date> <end_date> 2

   -------------------------------------------------------------------------


                                                                      -以上-

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages