前言
UiBot除了自带的强大功能外,还允许有编程经验的RPA开发人员对功能进行自由扩展,目前UiBot支持以下四种扩展方式:
Python插件、Lua插件、Lua Mod插件、COM插件(.Net也使用这种方式扩展)
本文将为大家讲解如何开发Python插件及如何在UiBot中引用Python插件扩展丰富UiBot的功能。
Python插件开发教程
1、下载UiBot软件
登录UiBot官网下载并安装:https://www.uibot.com.cn/downloadcenter
2、插件开发快速上手
打开 UiBot 安装目录下的 extend \ python 目录,在这个目录下创建 test.py 文件(记得修改文件扩展名),使用记事本打开这个文件,写入如下代码:
def Add(n1, n2):
return n1 + n2
然后将文件另存为 utf-8 编码格式:
插件保存后,打开 UiBot 在源代码视图写入代码:
Import test
traceprint test.add(1, 1)
运行 UiBot 脚本,运行后结果如下(输出2)代表插件调用正常:
如果运行结果不正常,可根据输出窗格的报错提示尝试解决,如果报错为 模块test没有加载成功,则检查 test.py 中的代码是否正确、文件名和路径是否正确(例如文件后缀问题)
3、开发环境部署(VS Code):
使用 Python 编写 UiBot 扩展库很容易,但 Python 本身是一门独立的编程语言,使用文本编辑器开发和调试都很不方便,因此建议使用 VS Code 集成开发环境做 Python 扩展库开发。
首先需要在机器上安装 Python 3.7.1,下载地址:https://www.python.org/downloads/release/python-371/
下载时选择 Windows x86-64 executable installer 版本,下载完成后直接安装。
安装 Python 时需要勾选 Add Python 3.7 to PATH,然后点击 Install Now 安装即可:
然后在机器上安装 VS Code,下载地址:https://code.visualstudio.com/
VS Code 安装完成后,是英文版本:
点击 VS Code 左侧边栏上方最后一个按钮(见截图),然后在搜索框里输入 Chinese,找到简体中文语言包安装:
安装完成后,VS Code 会提示是否重启编辑器使语言包生效,重启后软件即可显示为中文:
如果这步完成后语言没有切换成功,可以按热键 Ctrl + Shift + P,搜索 Configure Display Language,配置显示语言:
将红圈选中的内容更改为 zh-cn,保存文件后重启 VS Code,即可更换为中文显示:
VS Code 和 Python 都安装完成后,使用 VS Code 打开任意 py 后缀的文件,会自动提示是否安装 Python 开发环境
Python 扩展安装完成后,VS Code 还会要求你安装 pylint,这是在 VS Code 开发时用于语法错误检查的组件,可以根据自己的需求选择是否安装。
以上步骤操作后,使用 VS Code 的 Python 开发环境就部署完毕了,编写代码,然后F5运行看看效果吧。
4、Python 插件测试:
在 Python 文件中写入如下代码,这段代码在 UiBot 环境下是不会运行的,但在 Python 调试状态下会运行,以此实现更便捷的 Python 扩展库调试:
# 测试代码
if __name__ == '__main__':
print(123)
UiBot引用Python插件
插件的文件名即为插件名,例如我们编写的插件文件名为 test.py,则在 UiBot 中使用 Import test 即可载入插件。
对于Python插件来说,每个 def 的函数都可以使用UiBot调用。
1、插件使用的其他组件安装到UiBot
UiBot 内置的 Python 运行环境包含了绝大多数 Python 自带的扩展库和 pywin32 等使用频度较高的库,但仍不能保证全部覆盖,如果你在开发 Python 插件的过程中,使用了 UiBot 没有附带的库,则可能产生插件在 Python 环境下运行正常,在 UiBot 环境下运行不正常的问题,这时候就需要将对应的扩展库添加到 UiBot 安装目录下的 lib \ site-packages 文件夹中解决。
2、Python依赖的存放位置
我们在编写Python扩展时经常会用到pip安装其他的第三方依赖模块,如果要在UiBot 中顺利使用自己编写的扩展,那么同样要把这些第三方模块置入到UiBot 中,下面我们拿Python中的"requests"模块举例。
首先通过pip show requests命令,我们可以看到如下信息:
其中 Location代表当前开发环境第三方库的安装位置,Requires代表requests模块的依赖,我们需要进到Location目录下,将对应模块(包含自身)拷贝到UiBot安装目录下的\lib\site-packages之中
Location对应目录
UiBot对应目录
如此,我们即可正常的在UiBot之中使用依赖。
原文地址:https://forum.uibot.com.cn/thread-51.htm
相关推荐
6. **测试调用**:在Python中,你可以像导入普通Python模块一样导入这个C扩展模块,然后调用其中的函数。 通过这种方式,C语言编写的库可以无缝集成到Python环境中,充分利用C的性能优势,同时保持Python的易用性和...
拓展指的是将C++作为系统语言,来拓展Python模块的功能,并在Python环境中使用这些模块。嵌入则是将Python解释器融入到C++应用程序中,使得C++程序可以直接解释Python代码。 实现混合编程,需要了解如何构建Python...
标题中的“php的python扩展”指的是在PHP编程环境中使用Python代码的一种技术,它允许开发者在PHP应用程序中调用Python库和功能。这种扩展通常用于利用Python的强项,如科学计算、数据分析或机器学习,而PHP则处理...
本示例将详细介绍如何使用 C++ 编写 Python 扩展模块。 首先,我们需要了解 Python 的 C API,它是 Python 为 C/C++ 开发者提供的接口,用于编写与 Python 交互的 C 代码。C API 提供了一系列的函数和数据结构,...
总的来说,Python3.7.2中文文档的"Python扩展和嵌入Python解释器"部分涵盖了创建高效扩展模块以及在现有应用中无缝集成Python的关键技术。通过学习这部分内容,开发者可以充分利用Python的强大功能,同时利用C/C++的...
在Python中使用Boost扩展模块,可以方便地调用这些强大的C++组件,提高代码运行速度,同时利用Python的易用性和丰富的生态系统。 `boost_python-1.55.win32-py3.3` 是一个针对Python 3.3版本、Windows 32位系统的...
在Python的世界里,为了提升性能或者利用已有的C++库,开发者经常会选择使用C++来扩展Python的功能。本文将深入探讨如何使用C++扩展Python源码,以标题中提到的"AddTwoValue_Python_Extension"为例,我们将讨论C++...
STPython的核心功能是通过调用神通数据库的ACI(Application Call Interface)接口来扩展Python的功能,使得开发者可以使用Python编写SQL语句来操作神通数据库。然而,为了正常运行STPython,除了Python标准库外,还...
在压缩包中提供的`查看CAD扩展属性.exe`文件是一个已经打包好的可执行程序,很可能是使用`cx_Freeze`或`py2exe`这样的工具将Python脚本转换成的。这使得用户无需安装Python环境也能直接运行程序,提高了软件的便携性...
在《The.Python.3.Standard.Library.by.Example.2017.6.pdf》这本书中,你将看到这些模块的详细使用方法和丰富的实例,帮助你通过实践来掌握它们。书中可能会讲解如何利用这些模块进行实际问题的解决,比如文件操作...
在Python中,虽然有PIL(Python Imaging Library)等库可以处理位图,但在某些场景下,如大量位运算、内存映射等,C语言实现的扩展模块可以提供更好的性能。 这个扩展模块可能包含以下部分: 1. **头文件**:C语言...
"易语言调用Python.e"是易语言的一个扩展模块,专门用于实现易语言与Python的通信。开发者可以通过这个模块编写易语言程序,然后调用Python的函数或模块,实现复杂的逻辑处理和任务执行。这大大降低了开发者学习和...
在使用Python进行开发时,有时我们需要安装一些扩展模块来增强其功能。这些扩展模块可能是用C或C++编写的,因此需要依赖于特定的编译环境才能正确编译和运行。在Windows操作系统上,一个常见的依赖是Microsoft ...
在Python3环境中,可以使用`help()`函数来获取sys模块的帮助信息,例如`help(sys)`会显示sys模块的相关文档和功能介绍。而在Python2环境中,同样的操作也是有效的,但要注意Python2和Python3之间可能存在一些语法...
本文将深入探讨如何使用Python来扩展PSSE,并介绍一些常用的Python扩展库及其源码。 首先,Python扩展PSSE的核心在于PSSPy,这是PSSE提供的Python接口。通过PSSPy,用户可以在Python环境中调用PSSE的模型和函数,...
1. **支持的语言种类**:UiBot支持多种语言用于扩展模块,包括Java、Python、.Net(如C#)、Lua、C语言和JavaScript。 2. **模块化编程**:通过这种方式,开发者可以根据需求选择合适的语言开发模块,并在UiBot中...
在“07.02-python-扩展模块.ipynb”笔记中,你将学习如何创建和使用Python的C扩展模块。这包括定义C数据类型,编写C接口,以及使用Python的distutils或setuptools工具来编译和安装模块。这个过程涉及到Python的C API...
在Python编程中,模块是组织代码的一种有效方式,它允许我们将功能封装到独立的文件中,以便于重用和管理。本资源“Python模块开发与引用演示”将引导你掌握如何创建、组织和使用自定义模块,从而提升你的Python编程...
Python 模块是 Python 的扩展包,它可以提供更多的功能和工具来帮助开发者更好地编写 Python 程序。要使用 Python 模块,首先需要将其安装到 Python 环境中。本文档将详细讲解 Python 模块的导入、安装和使用过程。...