記事の内容
タイトルの通りですが、AzureのPython SDKを動かそうとしたら以下のメッセージが出てハマったので対応した内容をメモ
ModuleNotFoundError: No module named 'azure'
参考
チュートリアルの仮想環境構築まで実施
Python 用 Azure ライブラリを使用したクラウド開発の開始
その後、こちらのプログラムを実行
Azure Management LibraryでPythonからAzureを操作する
コード
参考サイトのままですが、一応
AzureSample.py
from azure.common.credentials import ServicePrincipalCredentials
from azure.mgmt.resource import ResourceManagementClient
import Config
# (1) アクセス情報
SUBSCRIPTION_ID = Config.SUBSCRIPTION_ID
TENANT_ID = Config.TENANT_ID
CLIENT_ID = Config.CLIENT_ID
CLIENT_SECRET= Config.CLIENT_SECRET
def main():
# (2) 資格情報の取得
creds = ServicePrincipalCredentials(
client_id = CLIENT_ID,
secret = CLIENT_SECRET,
tenant = TENANT_ID)
# (3) サブスクリプションIDを指定しリソースグループを操作するオブジェクトを取得
client = ResourceManagementClient(creds, SUBSCRIPTION_ID)
# (4) リソースグループ一覧の取得
for rg in client.resource_groups.list():
print("{} {}".format(rg.name, rg.location))
if __name__ == '__main__':
main()
対応
- azure の再インストール(pip uninstall azure → pip install azure)
- mytestenv を別ディレクトリに一旦移動
- プログラムを実行
- mytestenvを元のディレクトリに戻す
イマイチ納得は出来てませんが、これで動くようになりました。
*実行結果
fabric2 eastus
MC_fabric2_sample-HLF-AKS_eastus eastus
NetworkWatcherRG japaneast
MC_fabric_sample-HLF-AKS_westus westus
baasTest japanwest
baasTest2 japanwest
blockchain japanwest
fabric japanwest
fabric3 japanwest
cloud-shell-storage-southeastasia southeastasia