一、缘起

看到不少朋友问Uipath调用python的方法,

这里说一个方法:调用python程序编译后的exe(其他开发语言的程序也可以这么调用)。

由于调用的是exe文件,所以,其实没有用到UiPath.Python.Activities,用的是UiPath.Core.Activities.InvokeCode。

二、Invoke Code说明

中文翻译:调用代码

英文全名:UiPath.Core.Activities.InvokeCode

此activity从v2017.1版本开始提供。

同步调用http://VB.net代码,可选地传递一个输入参数列表。此活动还可以返回调用者工作流的Out参数。

属性

基本ContinueOnError - 指定即使活动引发错误,自动化是否仍应继续。该字段仅支持布尔值(True,False)。默认值为False。因此,如果该字段为空并且抛出错误,则项目的执行将停止。如果该值设置为True,则无论出现任何错误,项目的执行都将继续。

DisplayName - 活动的显示名称。

注意:

如果此活动包含在Try Catch中,并且ContinueOnError属性的值为True,则在执行项目时不会捕获任何错误。

输入参数 - 可以传递给调用的代码的参数。

杂项Private - 如果选中,则不再以Verbose级别记录变量和参数的值。

注意:

您的http://VB.net代码引用的程序集需要添加到Imports面板才能运行。

三、实现:InvokeCode调用pyhon编译后的exe

InvokeCode在下面的位置:

做个简单的流程如下:

定义三个变量并赋值:

拽一个InvokeCode到你的UiPath流程:

点击Edit Code,输入以下内容:

点击Edit Arguments,

输入以下参数:

这里InvokeCode的参数(第一列)和变量名称(第四列)相同。

四、pyhon文件如何编译成exe文件?

1)仅安装官网python,再安装pyinstaller:pip pyinstaller。

2)确认pyinstaller已安装完成:pyinstaller –version

3)切换Test.py文件路径位置

4)执行打包程序:pyinstaller Test.py

5)打包成功

Anaconda Prompt环境下也可以打包,但是打包后很大(近300M,可能打入了一些无用包),干净环境的python打包,仅20多M。

五、总结

UiPath调用python程序的方法很多, 这种方法不需要安装python环境.

(正文结束)