Visual Studio 2017 で Python 環境を構成し、SQL Server 、 Azure Data Services(Azure SQL Database 、 Cognitive Services 等 ) にアクセスしてみよう

Microsoft Japan Data Platform Tech Sales Team
清水

みなさん、こんにちは。以前の投稿では、 Visual Studio 2015 で Python 環境を構成しましたが、今回は、 Visual Studio 2017 で Python 環境を構成し、 SQL Server  、 Azure Data Services(Azure SQL Database 、 Cognitive Services 等 ) にアクセスする際の手順、ポイントをお伝えします。現在、 Visual Studio 2017 Professional あるいは Enterprise エディションをお持ちでない場合は、無償版の Community エディション のご使用もご検討下さい。 Community エディションをご使用頂くための条件等の詳細につきましては、以下のサイトをご参照下さい。

 

【無償版】Visual Studio の活用法

https://www.microsoft.com/ja-jp/dev/campaign/free-edition.aspx

 

Python のインストール 以前の投稿では 、 Python を別途インストールしましたが、 Visual Studio 2017 では、インストーラーから Python のインストールを行うことも可能です。ここでは、 Visual Studio 2017 のインストーラーから Python をインストールする方法をご紹介します。

 

Python 開発機能のインストール

Visual Studio 2015 で Python を使用するには、 Python Tools for Visual Studio を別途ダウンロード、インストールする必要がありましたが、 Visual Studio 2017 では、インストーラーから Python 開発機能のインストールが可能です。以下のようにインストーラーで、「 Python 開発」を選択し、インストールを行います。

image

※画面右側は、「 Python 開発」の選択時に既定で選択されるオプションです。

Visual Studio 2017 の Python サポートは、 Visual Studio 2017 のバージョンが 15.2 以降のため、 Visual Studio 2017 のアップデートが必要になる場合があります。アップデートを行うには、 Visual Studio 2017 の起動後、「ツール」→「拡張機能と更新プログラム」を選択します。なお、インストールやアップデート後に、上記インストーラーを起動するには、「スタート」→「 V 」→「 Visual Studio Installer 」を起動し、「変更」をクリックします。

 

Python 開発機能の動作確認とプロジェクトの作成

Visual Studio を起動します。メニューから「ツール」→「 Python 」→「 Python Interactive ウィンドウ」を選択すると、対話モードの Python が起動するので、簡単なコードを記述、実行し、正常動作を確認します。

image

Python スクリプトの記述、実行は、 C# 等と同様にプロジェクトを作成してから行います。メニューから「ファイル」→「新規作成」→「プロジェクト」を選択します。以下の画面が表示されるので、「テンプレート」から「 Python 」選択します。複数のテンプレートが表示されるので、「 Python アプリケーション」を選択します。プロジェクトの名前やファイルの配置先等を適宜変更し、プロジェクトを作成します。

image

 

Python スクリプトのコーディングと SQL Server 、 Azure SQL Database へのアクセス

Python スクリプトのコーディングと SQL Server 、 Azure SQL Database へのアクセスに関する手順、ポイントについては、以前の投稿の「 Python スクリプトのコーディング」、 Visual Studio Code を用いた Python スクリプトのコーディングに関するこちらの投稿もご参照下さい。

 

Cognitive Services へのアクセス

Cognitive Services  を利用すると、数行のコードを追加するだけで、自然なコミュニケーション手段で、見たり、聞いたり、話したり、理解したり、人間のニーズを解釈したりできる、強力なアルゴリズムを備えるアプリを構築できます。例えば、気持ちや感情の検出、視覚認識、音声認識、言語理解、知識および検索といったインテリジェントな各種機能を、簡単にアプリに追加できます。ここでは、 Cognitive Services APIs の 1 つの Computer Vision API を Python から利用し、画像分析を行う Python スクリプトの例をご紹介します。まず、 Azure Portal へアクセスし、 Computer Vison API のアカウントを作成します。

image

※ Computer Vision API の概要については、こちらをご参照下さい。

アプリ から Computer Vision API を利用するためには、作成した Computer Vision API アカウントにアクセスするためのキーが必要になります。 Azure Portal で作成した Computer Vision API アカウント→「 Keys 」をクリックし、キーを確認、メモします。

image

Computer Vision API アカウントの作成後、 Visual Studio 2017 を起動し、 Python アプリケーションのプロジェクトを作成します。その後、ソリューション エクスプローラーから拡張子が .py のファイルを開き、 Python スクリプトをコーディングします。コーディング例については、以下をご参照下さい。

 #必要なライブラリのインポート
import http.client, urllib.request, urllib.parse, urllib.error, base64, json

# Computer Vision API アカウントのキーを指定
subscription_key = 'Computer Vision API アカウントのキー'

#Computer Vision API アカウントを作成したリージョンに応じた URI を指定 ( 以下の southeastasia をリージョンに応じて変更 )
uri_base = 'southeastasia.api.cognitive.microsoft.com'

headers = {
     #Request headers.
     'Content-Type': 'application/json',
     'Ocp-Apim-Subscription-Key': subscription_key,
 }
params = urllib.parse.urlencode({
     #Request parameters. All of them are optional.
     'visualFeatures': 'Categories,Description,Color',
     'language': 'en',
 })

#Computer Vision API に分析させる画像ファイルを指定
 body = "{'url':'https://upload.wikimedia.org/wikipedia/commons/1/12/Broadway_and_Times_Square_by_night.jpg'}"

try:
     #Computer Vision の REST API 呼び出し、分析結果を取得
     conn = http.client.HTTPSConnection('southeastasia.api.cognitive.microsoft.com')
     conn.request("POST", "/vision/v1.0/analyze?%s" % params, body, headers)
     response = conn.getresponse()
     data = response.read()

     #JSON 形式で data 変数に格納された分析結果を表示
     parsed = json.loads(data)
     print ("Response:")
     print (json.dumps(parsed, sort_keys=True, indent=2))
     conn.close()

except Exception as e:
     print('Error:')
     print(e)

 

Python スクリプトの実行、デバック

記述したスクリプトはツールバーの「開始」、メニューの「デバック」→「デバックの開始」等から実行が可能です。実行すると、以下のような画面が起動し、 Computer Vision API  による分析結果が JSON 形式で返されることが確認出来ます。

image

 

今回は、Visual Studio 2017 で Python 環境を構成し、 SQL Server や Azure Data Services(Azure SQL Database、 Cognitive Services ) にアクセスする際の手順とポイントをご紹介しましたが、いかがだったでしょうか ?Python の開発環境として、 Visual Studio 2017 をぜひご検討下さい。

 

関連記事

Visual Studio 2015 で Python 環境を構成し、 SQL Server 、 Azure SQL Database にアクセスしてみよう Visual Studio Code と Python で Azure Data Services にアクセスしてみよう (Azure SQL Database 、 Azure Machine Leaning 編 ) Computer Vision API の概要 Computer Vision API Version 1.0 Cognitive Services を使ったインテリジェントな Bot の作り方