pythonからC#で書いたプログラムを呼び出す環境を作成する

pythonnetが動く環境を構築

最終的にやりたいこと
【Qiita】Pythonから.NETを呼び出す方法とついでにその逆も

まず pip install が上手くいかない

C#でSeleniumを制御するプログラムを書いて、それをPythonで制御する環境を作りたいと思い、
【Git Hub】github.com/pythonnet/pythonnet
をPCに導入しようとしたのですが、

というエラーから抜け出せなかったのでその時の備忘録。
Pythonのバーションを変えたり、足りていななさそうなパッケージを足したり色々試しても解決せず、最終的に完成したDocker imageをpullすることにしました。

Docker で解決

Docker のいいところは、環境に依存しないというところ。
ということで、Macに pythonnet を直入れするのではなく、pythonnetパッケージがDocker imageにJupyter notebookを入れる方向に方針転換。

イメージの作成からコンテナ起動まで

【Docker Hub】pythonnetが入っているDocker image

python3系がいいので

でイメージをpullし

docker imageを確認し、コンテナを作成します。
RUNする時に、ブラウザからJupyter notebookを開きたいので、8001ポートを開けておきます。

Docker上でJupyter notebookを動かす

コンテナが起動したら、

でコンテナの中に入ります。コンテナの中に入ってしまえば、あとはpipコマンドが使えるので楽勝

で jupyter を起動します。

Jupyter起動時にポートを開けて外からアクセスできるようにする必要があります。

8001番ポートが空いているので、このポートからアクセスすれば、Jupyterが使えるようになります。

「clr」がインポートできれば、PythonからC#のプログラムを読み込む準備ができました。

参考サイト

参考:dockerでjupyter notebookが動く環境を付け加える作業

Leave a Reply

Your email address will not be published. Required fields are marked *

日本語が含まれない投稿は無視されますのでご注意ください。(スパム対策)