Uipath 调用Python 脚本程序详解

2024-02-15 21:44

本文主要是介绍Uipath 调用Python 脚本程序详解,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

Python 活动概述

UiPath.Python.Activities 是一个新的活动包,创建它是为了支持直接从工作流运行 Python 脚本和方法。 其包含以下活动:
Python 作用域(Python Scope) - 为 Python 活动提供作用域的容器。
加载 Python 脚本(Load Python Script) - 将 Python 代码转换为 PythonObject 变量。
调用 Python 方法(Invoke Python Method) - 在工作流中运行 Python 脚本中的调用指定方法。
获取 Python 对象(Get Python Object) - 检索指定的 Python 脚本中使用的 .NET 类型。
运行 Python 脚本(Run Python Script) - 执行 Python 代码或Python 文件。

Uipath 调用Python 前置条件

1。电脑安装Python 环境,Python 下载地址:

Python Releases for Windows | Python.org

注意:目前官方是支持Python3.11 及以下的低版本,建议安装Python3.10 环境

选择对应的python 版本,本文的Python 环境是3.10.11

2。电脑安装.Net 5.0 ,.Net 5.0 下载地址:

下载 .NET 5.0 (Linux、macOS 和 Windows)

选择应对的操作系统下载:

注意:如果电脑没有安装.Net 5.0  在使用Uipath 调用Python 时,一直卡在Python Scope 作用域活动,没有反应,也没有报错,这时需注意是否有安装.Net5.0 SDK

3。如果Python 脚本有导入第三方类库,在Uipath 调用Python 前,先使用pip install 库名 安装后,再执行,否则提示 One or more errors occurred 类似错误

1.Python Activities 包安装

点击【管理程序包】,在对话窗口点击【所有包】,在查询输入框输入“python",找到uipath.python.activities包,选择后,点击【安装】,再点击【保存】,如下图所示:

提示安装版本选择1.7.1 最新版本。

2. Python 作用域(Python Scope) 

Python 作用域 ”容器活动连接到计算机上安装的 Python 环境,使您能够使用其内部的其余活动。

Python Scope 类似Excel Scope,需运行Excel 文件时,需将Excel 活动嵌套在Excel Scope 内。同样,需运行Python 活动时,需求Python 活动嵌套在Python Scope内。Python Scope 提供一个Python 运行环境。

Python Scope 作用域功能:

功能:Python Scope 活动提供作用域并初始化指定 Python 环境的容器。 当“ Python 作用域 ”活动结束时,系统将删除到目前为止加载的所有 Python 对象。

2.1 属性配置说明

  • 库路径(Linux 或版本 > 3.9)- 对于 Linux,为 libpython**.so 库的路径,包括库名称。对于 Windows(版本 > 3.9),为 python**.dll 的路径,包括库名称。对于 Windows(版本 <= 3.9),请将此字段留空。
  • 路径 - Python 环境安装文件夹的路径
  • 目标 ” - Python 运行时平台。 选择以下两个可用选项之一:x86 或 x64。
  • 超时 ” - 在 Python 脚本终止并引发异常之前,允许其运行的时间(以秒为单位)。
  • “版本” - 一个下拉列表,其中包含用于选择要使用的 Python 版本。 默认情况下,此属性设置为 “自动”

2.2 示例说明

如果系统是64位则选择X64 否则选择x86

路径 c:\python 是指python 的安装目录,如下图所示

库路径,python脚本>=3.10 则需设置dll路径,否则提示:

Python Scope: Error initializing Python engine 类似错误

工作文件夹:设置需要执行python 脚本的所在文件夹,可以为空

3. 加载Python脚本(Load Python Script)

Load Python Script功能:

将 Python 脚本的处理程序存储在 PythonObject 变量中,则可以使用生成的变量来调用代码中的方法。

3.1 了解PythonObject变量类型

了解PythonObject 变量类型,之前有使用string,datarow ,datatable 等类型,在和python 脚本数据交互时,我们需使用pythonobject变量类型。

PythonObject 变量类型功能:

用于处理和操作 Python 数据, 通过使用“ 加载 Python 脚本 ”活动,可以轻松地将包含 Python 脚本的任何文件中的代码分配给 PythonObject ,还可以使用“ 获取 Python 对象 ”活动将其转换为 .NET 数据类型。有了这个强大的变量,可以使用每个任务的专用活动来运行脚本、提取 .NET 类型或调用 Python 方法。

3.2 属性配置说明

  • “代码” - 要加载的 Python 代码。
  • 脚本 ” - 包含要加载的 Python 代码的文件的路径。
  • 结果 ” - 指定 Python 脚本的处理程序,存储在 PythonObject 变量中。

注意:

1.代码和脚本 选项,二选一,建议使用脚本路径,便于维护。

2.结果输出项: Python 脚本的处理程序存储在 PythonObject 变量类型中,创建其变量用来接收。

3.3 示例说明

如下图,创建变量python_excel_instance,用来保存Python脚本处理程序,后面其他活动需要与Python 交互时,则使用该变量则可。

4. 调用Python方法(Invoke Python Method)

调用Python方法功能:

在工作流中运行 Python 脚本中的调用指定方法。

注意:

使用调用Python方法活动时,先使用“ 加载 Python 脚本 ”活动拖拉到Python作用域内。

4.1 属性配置说明

  • 输入参数 ” - 要调用的 Python 脚本的输入参数列表(如果调用python 方法有参数,则必填)。 字段仅支持 IEnumerable<Object> 变量。
  • 实例 - 包含要运行的方法的 Python 脚本,存储在 PythonObject 变量中。 字段仅支持 PythonObject 变量。
  • 名称 ” - 要调用的方法的名称。 此字段仅支持 String 变量。
  • 结果 ” - 调用方法的结果,存储在 PythonObject 变量中。 可以使用“ 获取 Python 对象 ”活动进一步处理,并将其转换为 .NET 数据类型。

4.2 示例说明

参数格为式 {}

如{"参数名称值1”,"参数名称值2”,"参数名称值3”} 也可以使用变量,本文案例 参数值为:

{in_TransactionItem("PdfFilePath"),in_str_OutputFolder,Convert.ToString(in_TransactionItem("fileName"))+".xlsx"}

5. 获取Python对象(Get Python Object)

获取Python对象功能:

用于从 Python 对象获取 .NET 数据类型。Python 数据类型与Uipath 数据类型不一致,当Uipath 调用Python 脚本时,如果脚本有返回值,Uipath 需依其返回值做相关业务逻辑判断,这时需使用获取Python 对象活动。

5.1 属性配置说明

  • Python 对象 ” - 要从中提取值的 Python 对象。 此字段仅支持 PythonObject 变量。
  • “类型参数 ” - 要从 PythonObject 变量获取的 .NET 数据类型。 默认情况下,它设置为 Object。 支持 Studio 中可用的所有数据类型。
  • 结果 ” - 在“类型参数” 属性中选择的与 Python 对象对应的 .NET 类型变量。

5.2 示例说明

6. 运行Python脚本(Run Python Script)

运行Python脚本功能:

执行 Python 代码,支持代码或Python文件路径。

6.1 属性配置说明

  • “代码” - 要运行的 Python 代码。 字段仅支持 String 变量。
  • 文件 ” - 包含要运行的 Python 代码的文件的路径。 字段仅支持 String 变量。

6.2 示例说明

这篇关于Uipath 调用Python 脚本程序详解的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/712615

相关文章

Python Transformers库(NLP处理库)案例代码讲解

《PythonTransformers库(NLP处理库)案例代码讲解》本文介绍transformers库的全面讲解,包含基础知识、高级用法、案例代码及学习路径,内容经过组织,适合不同阶段的学习者,对... 目录一、基础知识1. Transformers 库简介2. 安装与环境配置3. 快速上手示例二、核心模

一文详解Java异常处理你都了解哪些知识

《一文详解Java异常处理你都了解哪些知识》:本文主要介绍Java异常处理的相关资料,包括异常的分类、捕获和处理异常的语法、常见的异常类型以及自定义异常的实现,文中通过代码介绍的非常详细,需要的朋... 目录前言一、什么是异常二、异常的分类2.1 受检异常2.2 非受检异常三、异常处理的语法3.1 try-

Java中的@SneakyThrows注解用法详解

《Java中的@SneakyThrows注解用法详解》:本文主要介绍Java中的@SneakyThrows注解用法的相关资料,Lombok的@SneakyThrows注解简化了Java方法中的异常... 目录前言一、@SneakyThrows 简介1.1 什么是 Lombok?二、@SneakyThrows

Java中字符串转时间与时间转字符串的操作详解

《Java中字符串转时间与时间转字符串的操作详解》Java的java.time包提供了强大的日期和时间处理功能,通过DateTimeFormatter可以轻松地在日期时间对象和字符串之间进行转换,下面... 目录一、字符串转时间(一)使用预定义格式(二)自定义格式二、时间转字符串(一)使用预定义格式(二)自

Redis Pipeline(管道) 详解

《RedisPipeline(管道)详解》Pipeline管道是Redis提供的一种批量执行命令的机制,通过将多个命令一次性发送到服务器并统一接收响应,减少网络往返次数(RTT),显著提升执行效率... 目录Redis Pipeline 详解1. Pipeline 的核心概念2. 工作原理与性能提升3. 核

Python正则表达式语法及re模块中的常用函数详解

《Python正则表达式语法及re模块中的常用函数详解》这篇文章主要给大家介绍了关于Python正则表达式语法及re模块中常用函数的相关资料,正则表达式是一种强大的字符串处理工具,可以用于匹配、切分、... 目录概念、作用和步骤语法re模块中的常用函数总结 概念、作用和步骤概念: 本身也是一个字符串,其中

Python使用getopt处理命令行参数示例解析(最佳实践)

《Python使用getopt处理命令行参数示例解析(最佳实践)》getopt模块是Python标准库中一个简单但强大的命令行参数处理工具,它特别适合那些需要快速实现基本命令行参数解析的场景,或者需要... 目录为什么需要处理命令行参数?getopt模块基础实际应用示例与其他参数处理方式的比较常见问http

python实现svg图片转换为png和gif

《python实现svg图片转换为png和gif》这篇文章主要为大家详细介绍了python如何实现将svg图片格式转换为png和gif,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 目录python实现svg图片转换为png和gifpython实现图片格式之间的相互转换延展:基于Py

Python中的getopt模块用法小结

《Python中的getopt模块用法小结》getopt.getopt()函数是Python中用于解析命令行参数的标准库函数,该函数可以从命令行中提取选项和参数,并对它们进行处理,本文详细介绍了Pyt... 目录getopt模块介绍getopt.getopt函数的介绍getopt模块的常用用法getopt模

Python利用ElementTree实现快速解析XML文件

《Python利用ElementTree实现快速解析XML文件》ElementTree是Python标准库的一部分,而且是Python标准库中用于解析和操作XML数据的模块,下面小编就来和大家详细讲讲... 目录一、XML文件解析到底有多重要二、ElementTree快速入门1. 加载XML的两种方式2.