前面文章写了《R027---Uipath调用python编译后的exe(第2版)》。
本文写的是UiPath中调用Python相关的Activity中文说明及实践。
https://activities.uipath.com/docs/about-the-python-activities-pack
Python活动包已经成为开源的。欢迎在我们的Github存储库上进行协作。
此包的目的是使您能够直接从我们的产品中调用任何工作流中的Python脚本和方法。您还可以将输入参数传递给调用的代码,以及检索活动生成的输出数据。
在Python的范围容器活动连接在计算机上安装Python环境,使您可以使用内本身的活动的其余部分。
该PythonObject
变量专门用于处理和操作Python数据。通过使用“ 加载Python脚本”活动,您可以轻松地将包含Python脚本的任何文件中的代码分配给a,PythonObject
并且还可以使用“ 获取Python对象”活动将其转换为.NET数据类型。
有了这个强大的变量,您可以通过使用每个任务的专用活动来运行脚本,提取.NET类型或调用Python方法。
https://activities.uipath.com/docs/release-notes-python
UiPath.Python.Activities v1.1.6857.17236
我们理解您需要支持机器学习模型,因此我们改进了Python Activities包,增加了对Python x64的支持。
这一刻终于来了 - 整个UiPath平台已经本地化,因此您可以拥有真正身临其境的体验,从安装到设计和执行。现在,除了英语,您还可以使用日语访问所有内容,包括我们的在线文档。
修复了导致Python脚本错误无法在Studio中正确显示的问题。
该UiPath.Python.Activities是一项新的活动包,创建以使从工作流运行Python脚本和方法直接。它包含以下活动:
获取Python对象 - 检索指定Python脚本中使用的.NET类型。
Python Scope - 为Python活动提供范围的容器。
调用Python方法 - 帮助您直接在工作流中从Python脚本运行指定的方法。
加载Python脚本 - 将Python代码转换为PythonObject
变量。
运行Python脚本 - 使您能够执行Python代码。您可以直接在活动中输入代码或为其提供文件路径。
https://activities.uipath.com/docs/python-scope
UiPath.Python.Activities.PythonScope
一个容器,它为Python活动提供范围并初始化指定的Python环境。当Python Scope活动结束时,所有加载到该点的Python对象都将被删除。
DisplayName - 活动的显示名称。
Path - Python环境安装文件夹的路径。该字段仅支持字符串和字符串变量。
版本 - 包含该列表的下拉列表使您可以选择要使用的Python版本。默认情况下,此属性设置为“ 自动”。
设置为“ 自动”时,此属性仅检测v3.5以上的版本。
Private - 如果选中,则不再以Verbose级别记录变量和参数的值。
https://activities.uipath.com/docs/load-script
UiPath.Python.Activities.LoadScript
使您能够将Python脚本的处理程序存储在PythonObject
变量中。您可以使用结果变量来调用代码中的方法。如果除了脚本中存在的方法之外还有内联代码,则代码也会在运行时执行。只能在Python Scope活动中使用。
由于软件限制,此活动默认使用Python活动包的安装位置作为脚本的运行目录。要更改此设置,并且能够在脚本中使用相对路径,可以将以下代码添加到已加载的脚本中作为解决方法:
python
import sys
import os
sys.path.append(os.path.dirname(os.path.realpath(__file__)))
import
DisplayName - 活动的显示名称。
代码 - 要加载的Python代码。该字段仅支持字符串和字符串变量。
文件 - 包含要加载的Python代码的文件的路径。该字段仅支持字符串和字符串变量。
Private - 如果选中,则不再以Verbose级别记录变量和参数的值。
结果 - 存储在PythonObject
变量中的指定Python脚本的处理程序。
https://activities.uipath.com/docs/invoke-method
UiPath.Python.Activities.InvokeMethod
帮助您直接在工作流中从Python脚本运行指定的方法。首先需要使用Load Python Script活动将包含该方法的脚本加载到环境中。只能在Python Scope活动中使用。
DisplayName - 活动的显示名称。
输入参数 - 要调用的Python脚本的输入参数列表(如果有)。该字段仅支持IEnumerable
变量。
实例 - 包含要运行的方法的Python脚本,存储在PythonObject
变量中。该字段仅支持PythonObject
变量。
Name - 要调用的方法的名称。该字段仅支持字符串和字符串变量。
Private - 如果选中,则不再以Verbose级别记录变量和参数的值。
结果 - 调用方法的结果,存储在PythonObject
变量中。可以使用Get Python Object活动进一步处理并转换为.NET数据类型。
https://activities.uipath.com/docs/get-object
UiPath.Python.Activities.GetObject
将Python.Object
其他Python活动(如Load Python Script)返回的变量转换为您选择的.NET数据类型。只能在Python Scope活动中使用。
DisplayName - 活动的显示名称。
Python Object - 存储在PythonObject
变量中的Python对象,您希望将其转换为.NET类型。该字段仅支持PythonObject
变量。
TypeArgument - 要将PythonObject
变量转换为的.NET数据类型。默认情况下,它设置为Object
。支持Studio中可用的所有数据类型。
Private - 如果选中,则不再以Verbose级别记录变量和参数的值。
结果 - PythonObject
变量转换为在TypeArgument属性中选择的.NET类型变量。
https://activities.uipath.com/docs/run-script
UiPath.Python.Activities.RunScript
使您能够执行Python代码。您可以直接在活动中输入代码或为其提供文件路径。只能在Python Scope活动中使用。
由于软件限制,此活动默认使用Python活动包的安装位置作为脚本的运行目录。要更改此设置,并且能够在脚本中使用相对路径,可以将以下代码添加到已加载的脚本中作为解决方法:
python
import sys
import os
sys.path.append(os.path.dirname(os.path.realpath(__file__)))
import
DisplayName - 活动的显示名称。
代码 - 您要运行的Python代码。该字段仅支持字符串和字符串变量。
文件 - 包含要运行的Python代码的文件的路径。该字段仅支持字符串和字符串变量。
Private - 如果选中,则不再以Verbose级别记录变量和参数的值。
https://activities.uipath.com/docs/invoking-a-python-script
为了举例说明如何使用此活动包,我们构建了一个自动化过程来调用Python脚本,该脚本定义了两个操作:Add和Subtract。然后从脚本调用其中一个方法Add,并将整数变量列表作为输入参数。然后将存储在专有PythonObject
变量中的结果转换为.NET数据类型,以便在Studio中进一步使用。
您要使用的Python版本必须安装在要运行该过程的计算机上。
这就是演示的构建方式:
打开Studio并启动一个新进程。
将Python Scope活动拖到工作流设计器中。
在Python Scope活动的Path属性中指定Python的安装目录。默认情况下,位置是,您使用的Python版本在哪里。%LOCALAPPDATA%\Programs\Python\PythonXX\python.exe
XX
在Python Scope的Do部分中拖动Load Python Script活动,并将文件路径添加到File属性中的Python脚本。MathOperations.py
创建一个新PythonObject
变量,调用MathFunctions
并将其添加到Result属性字段中。
添加Invoke Python Method活动并按如下方式配置其属性:
输入参数 -{2,3}
实例 - 将在步骤5中创建的变量添加MathFunctions
到此字段。
名称 - 在这种情况下,在要使用的脚本中添加方法的名称add
。
结果 - 创建一个PythonObject
名为的新变量,SumResultPython
并将其添加到此属性字段中。
接下来,将Get Python Object活动拖到工作流程中。配置其属性如下:
Python对象 - 将SumResultPython
变量添加到此字段。
TypeArgument - Int32
从下拉列表中选择。
结果 - 创建一个新Int32
变量,调用Result
并将其添加到此字段。
在项目结束时添加消息框活动并将其配置为显示Result
变量。
您的项目应如下所示:
9.运行该过程。该消息框显示的结果添加方法。
10.Demo下载地址:
https://www.uipath.com/hubfs/Documentation/WorkflowExamples/18.3%20Examples/Python.7z
(正文结束)
附1:关于本公众号
微信公众号名称:柴班说
欢迎转载与分享,也请注明出处。
附2:关于本文作者
微信号:chaijw
识别下面的二维码,可以与作者进行更为深入的交流。