0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Pythonで configparser を利用して設定ファイルから設定情報を取得してみました

Posted at

概要

セクション付きの設定ファイルから設定情報を取得する Pythonプログラムを作成してみました。標準ライブラリの configparser を使用しています。

実行環境

macOS Monterey 12.3.1
python 3.8.12

設定ファイルの準備

本来なら、「.ini」ファイルだと思いますが、手っ取り早く実施するために「~/.aws/credentials」ファイルを利用します。

.aws/credentials
[default]
aws_access_key_id = AAAAAAAAAAAAAAAAAAAA
aws_secret_access_key = DEPAP77776666KLxvbLA75075OtttJUUU+ch5pr7
[billing]
aws_access_key_id = BBBBBBBBBBBBBBBBBBBB
aws_secret_access_key = BIPAP55554444KLxvbLA53053OtttJUUU+ch3pr5
[iapp]
aws_access_key_id = CCCCCCCCCCCCCCCCCCCC
aws_secret_access_key = IAPAP33332222KLxvbLA31031OtttJUUU+ch1pr3

実行プログラム

GetConfigParser.py
import os
import sys

# 設定元ファイルの確認表示
with open("/Users/myuser/.aws/credentials", "r") as fr:
    out = os.path.expandvars(fr.read())
    sys.stdout.write(out)


################ ここからが本題、、、、、
import configparser

# 設定ファイルを読み込む準備
config_ini = configparser.ConfigParser()
config_ini.read('/Users/myuser/.aws/credentials', encoding='utf-8')

# セクションを指定しての読み込み
config = config_ini['iapp']

# 変数の読み込み
iam_id = config.get('aws_access_key_id')
iam_key = config.get('aws_secret_access_key')

# ターミナル出力
print('\nid = ', iam_id, '    key = ', iam_key, "\n")

プログラムの実行

## 設定情報の取得
$ python GetConfigParser.py      
[default]
aws_access_key_id = AAAAAAAAAAAAAAAAAAAA
aws_secret_access_key = DEPAP77776666KLxvbLA75075OtttJUUU+ch5pr7
[billing]
aws_access_key_id = BBBBBBBBBBBBBBBBBBBB
aws_secret_access_key = BIPAP55554444KLxvbLA53053OtttJUUU+ch3pr5
[iapp]
aws_access_key_id = CCCCCCCCCCCCCCCCCCCC
aws_secret_access_key = IAPAP33332222KLxvbLA31031OtttJUUU+ch1pr3

id =  CCCCCCCCCCCCCCCCCCCC     key =  IAPAP33332222KLxvbLA31031OtttJUUU+ch1pr3 

まとめ

環境変数を利用しない方法もありですね。

参考記事

以下の記事を参考にさせていただきました。感謝申し上げます。
Pythonで設定ファイルを読み込む処理をラップしてクラスとして扱うと便利

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?