PythonのAPI Key管理方法
複数のAPIを使用するとAPI Keyの管理が大変になる。また明示的にAPI Keyをファイルに記述することはセキュリティの問題でできない。今回はpythonによるAPI Key管理方法の一つであるdotenvやmodule化を紹介する。
1. dotenv
.envファイルに環境変数を記述することで、複数の変数を一つのファイルで管理することができる。
lib/.env
VALUE_NAME = value
main.py
from dotenv import load_dotenv
dotenv_path = join(dirname(__file__), 'lib/.env')
load_dotenv(dotenv_path)
2. from *** import ( var1, var2 )
特定のpython code(lib/key.py)に環境変数(var1, var2)を記述して、from lib.key import ( var1, var2 )で環境変数を一つのPython fileにまとめることができる。以下ではos.environで既に登録された環境変数(DEFINEDVAR1,DEFINEDVAR2)を読み込み割り当てている。
lib/key.py
import os
import sys
VAR1 = os.environ.get('DEFINEDVAR1', None)
VAR2 = os.environ.get('DEFINEDVAR2', None)
if VAR1 is None:
print('Specify VAR1 as environment variable.')
sys.exit(1)
if VAR2 is None:
print('Specify VAR2 as environment variable.')
sys.exit(1)
python
from lib.key import (
VAR1, VAR2
)