Skip to content

UiPathのPython連携アクティビティを開発する

Posted in ノート

Last updated on 2021年12月31日

UiPathとPythonで書いたコードを連携させたいなぁ

作ればいいじゃないかにゃ?!

確かに!
というわけで、こんにちはエピックです。
最近Pythonを利用して、画像処理やAモデルの開発を行うことが多いのですが、自動化の延長としてUiPathから呼び出せたら便利だなとふと思いました。
そこで実際に、カスタムアクティビティ開発を行いPythonを実行することができたのでその備忘録となります。


カスタムアクティビティの開発については、下記の記事で書いてますので参考にしてみてください。

今回開発したもの

開発したものですが、Pythonコードを実行しその標準出力を受け取るカスタムアクティビティです。

標準出力と書いてますが、Pythonであれば、print 関数を用いたその出力結果です。

まず、コードを記載します。

上記のコードは、UiPathのカスタムアクティビティ開発の際に、Visual Studioに記述したものをそのまま記載しています。

(実際の利用イメージは、本記事の下のほうに貼っております)

コード上、C#で行っている処理内容ですが、System.DiagnosticsにあるProcessStartInfoクラスを使って起動するプログラム(Python.exe)の設定をし、System.Diagnosticsにある、ProcessクラスのStartメソッドを使い外部プログラムを起動しているのみとなります。

あわせて、標準出力を得るため、Process.StandardOutput よりアプリケーションの標準出力を受け取っています。

引数としては、Python.exeのパス、実行するpythonスクリプトのパス、そして実行結果をうけとる String型の変数を定義しています。

注意点として、実行環境上には、あらかじめ Pythonをセットアップしておく必要があります。


実行してみる

コードではイメージがわかないと思いますので開発したものを実行してみたいと思います。

まず全体イメージです。

中央にある「Connect Python」と青くなっているアクティビティが開発したカスタムアクティビティです。

プロパティには、Python.exeのパスと実行するPythonスクリプトを設定しています。

そして、受け取った結果を【メッセージボックス】を利用し表示するようにしてみます。

ちなみに、今回実行するPythonスクリプトは非常にシンプルで下記となっています。

print("Hello World!! from Epic Life")

では実行してみます。

実行!

しっかり値を受け取ることができました。


最後に


今回このようなアクティビティを作ってみたのも、Pythonであれば簡単に実装できるがVBAやC++ではちょっと。。。という問題を解決しすぐにUiPathとPythonで自動化の検証を行いたいと思ったのがきっかけした。
あまりニーズはないと思いますが手軽で作れたので興味のある方は参考にしてみてください。

今回も最後までお読みいただきありがとうございます。

では。

Be First to Comment

コメントを残す

メールアドレスが公開されることはありません。