![見出し画像](https://assets.st-note.com/production/uploads/images/161366778/rectangle_large_type_2_87915c8d2fad47e6c2260c9f5eb56609.png?width=1200)
WinActorのPythonについて①
こんばんは、かーでぃです。WinActor7.5からPython実行ノードが追加されました。こちらは、VB ScriptがWindowsのサポート外となることから、ライブラリ環境をPythonに移行するための、第1弾という認識です。
なので、現時点ではPythonの実行環境を構築しなくても、WinActorをインストールすれば、「WinActorのPython実行ノードでPython実行環境を手に入れた」程度の話で、それほど気にする必要もない機能かと思います
それでも、7.5で変わった大きな機能の1つなので、取り上げたかったのですが、会社パソコンや家パソコンの環境の問題がありまして、これまで取り上げることができませんでした。
が、やっとWinActorでPythonを使える環境になったため、ちょっとテストしてみたいと思います。
標準入出力
print('hello world')
上記コードを実行すると、下記のエラーメッセージが表示されます。
標準入出力とは、画面やキーボード入力のようなものを指し、WinActorの実行環境では、それらを使うことができませんでした。
![](https://assets.st-note.com/img/1731239405-XfKFmBJQgRWxINE4ZzlOU97n.png)
実行環境
標準出力が使えなかったので、出力をファイルにしています。
実行すると、"enviroment_info.txt'が、WinActor.exeのあるフォルダか、シナリオがファイルが保存されているフォルダに生成されます。
import platform
import sys
import os
# ファイル名を指定
filename = 'environment_info.txt'
# ファイルに書き込む
with open(filename, 'w') as file:
# Pythonバージョン
file.write('Python version: ' + sys.version + '\n\n')
# OS情報
file.write('OS: ' + platform.system() + ' ' + platform.release() + '\n')
file.write('OS version: ' + platform.version() + '\n')
file.write('Machine type: ' + platform.machine() + '\n\n')
# Python実行環境のパス
file.write('Python executable path: ' + sys.executable + '\n\n')
# 環境変数
file.write('Environment Variables:\n')
for key, value in os.environ.items():
file.write(f'{key}: {value}\n')
私の環境は、こんな感じでした。
Python version: 3.12.1 (tags/v3.12.1:2305ca5, Dec 7 2023, 21:47:43) [MSC v.1937 32 bit (Intel)]
OS: Windows 11
OS version: 10.0.22631
Machine type: AMD64
Python executable path: C:\Users\****\OneDrive - ****\デスクトップ\WinActor7\python\python.exe
Environment Variables:
ALLUSERSPROFILE: C:\ProgramData
……以下省略……
※ちなみに、コードはChatGPTに考えてもらいましたw
パッケージ一覧
Python環境にインストールされているパッケージの一覧を表示するコードです。
import platform
import sys
import os
import subprocess
# ファイル名を指定
filename = "environment_info2.txt"
# ファイルに書き込む
with open(filename, "w") as file:
# インストールされているパッケージ一覧
file.write("\nInstalled packages:\n")
result = subprocess.run(['pip', 'list'], stdout=subprocess.PIPE, text=True)
file.write(result.stdout)
実行すると下記の結果が得られました。
pipだけ???
Installed packages:
Package Version
------- -------
pip 24.0
んー、よくわからないのでpandasとエクセルファイルを操作するためのopenpyxlをインストールしてみました。
書きコマンドは、コマンドプロンプトから叩けば実行されます。
pip install openpyxl pandas
インストールが正常終了してから、再度実行したところ…
Installed packages:
Package Version
--------------- -----------
et_xmlfile 2.0.0
numpy 2.1.3
openpyxl 3.1.5
pandas 2.2.3
pip 24.0
python-dateutil 2.9.0.post0
pytz 2024.2
six 1.16.0
tzdata 2024.2
無事に各種ライブラリが入ってきましたw
ライブラリを使ってみる
ライブラリがインストールできたので、さっそく使ってみましょう。
WinActorということで、エクセル操作関連のライブラリを使ってみたいと思います。
from openpyxl import load_workbook
# Excelファイルを開く
file_path = "your_file.xlsx" # Excelファイルのパスを指定
workbook = load_workbook(file_path)
この先のコードもあるのですが、一旦ここまでにして実行してみましょう。
![](https://assets.st-note.com/img/1731247085-52fZpNiaVgqGzlOhTA0718Eb.png)
んー、おかしいですね…。
ライブラリはインストールして環境としては認識してるはずなのですが、実行時はライブラリが見つかりませんとエラーになります。
pandasなど、他のライブラリを指定してもダメでした。
WinActorのPython環境は、ライブラリが使えない??
WionActorのPython環境は、外部環境も設定できるので、そちらでも次回試してみます。
![](https://assets.st-note.com/img/1731247200-FSt6CAQrlwEHNsmk41U3TnRL.png)
ちなみに、Pythonの環境インストールについては、こちらからダウンロードができます。
いいなと思ったら応援しよう!
![かーでぃ / KAMADA Makoto](https://assets.st-note.com/production/uploads/images/168208905/profile_5e75ab9803122eb4c37ec6e9ab86e5b1.jpeg?width=600&crop=1:1,smart)