前言

UiBot除了自带的强大功能外,还允许有编程经验的RPA开发人员对功能进行自由扩展,目前UiBot支持以下四种扩展方式:

Python插件、Lua插件、Lua Mod插件、COM插件(.Net也使用这种方式扩展)

本文将为大家讲解如何开发Python插件及如何在UiBot中引用Python插件扩展丰富UiBot的功能。

Python插件开发教程

1、下载UiBot软件

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 扩展库开发。

下载时选择 Windows x86-64 executable installer 版本,下载完成后直接安装。

安装 Python 时需要勾选 Add Python 3.7 to PATH,然后点击 Install Now 安装即可:

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之中使用依赖。

python 自动化办公 uibot_使用 Python 扩展丰富 UiBot 的功能及在 UiBot 中引用 Python 模块...相关推荐

  1. python 自动化办公 uibot_【插件开发】使用 Python 扩展 UiBot 的功能

    前言: UiBot 除了自带的强大功能外,还允许有编程经验的开发人员对功能进行自由扩展,目前 UiBot 支持以下四种扩展方式: Python 插件.Lua 插件.Lua Mod 插件.COM 插件( ...

  2. 【python自动化办公】Python自动化之pdf——PyPDF2、pdfplumber、fitz、pdf2image库介绍

    目录 前言 1. 学习python自动化办公目的 2. 未来持续打卡内容 3. 资料来源与思维导图 一.PDF处理库 1.PyPDF2--基础操作 2.pdfplumber--表格抽取 3.fitz- ...

  3. python自动化办公入门书籍推荐-用python进行办公自动化都需要学习什么知识呢?...

    自动化办公无非是excel.ppt.word.邮件.文件处理.数据分析处理.爬虫这些.我来一一介绍如何学习,找资料! 最近做了个Python办公自动化的Live讲座,不要脸的推一波~ python基础 ...

  4. python自动化办公脚本下载-python自动化脚本

    广告关闭 腾讯云双11爆品提前享,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高满返5000元! 运维自动化,已经成为运维必不可少的一部分,下面附上自己写的监控nginx_stat ...

  5. python自动化办公入门书籍推荐-盘点使用Python进行自动化办公所需要的知识点

    知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理 ...

  6. python自动化办公兼职-python自动化办公?学这些就够用了

    知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手? python在自动化办公领域越来越受欢迎,批量处 ...

  7. python自动化办公 书籍-python自动化办公知识点整理汇总

    知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动化办公领域越来越受欢迎,批量处理 ...

  8. python自动化办公培训排名-盘点使用Python进行自动化办公所需要的知识点

    三军可夺帅也,匹夫不可夺志也. 知乎上有人提问:用python进行办公自动化都需要学习什么知识呢? 这可能是很多非IT职场人士面临的困惑,想把python用到工作中,却不知如何下手?python在自动 ...

  9. 2021-01-26 Python自动化办公-处理word文档

    Python自动化办公-处理word文档 年底项目投标,需要整理大量的内容,标书的很多内容是其实是之前的标书重复的,可以把对应的各个部分内容合并,然后再处理格式等.如果采用常规操作每次操作需要打开子目 ...

最新文章

  1. 构建可靠的前端异常监控服务-采集篇
  2. PHP语言特性和各版本的差异
  3. WPF 表格控件 ReoGrid 的简单使用
  4. 【CodeForces - 689D】Friends and Subsequences(RMQ,二分 或单调队列)
  5. NOIP2013 写后感
  6. 游戏开发之深拷贝与浅拷贝(C++基础)
  7. 阿里社招面试如何准备
  8. python实现多智能体一致性_多智能体深度学习算法MADDPG的PARL实践
  9. python 数据分析实践--(1)收入预测分析
  10. vue中SM4加密解密(js部分)
  11. MacBook 运维软件
  12. (四.2)计算机组成原理笔记——存储器(静态RAM和动态RAM的区别,动态RAM的刷新, ROM……)
  13. 程序员脱发自救:用计算机视觉技术安全植发
  14. 自编码器,变分自编码器和生成对抗网络异同
  15. Synopsys VCS仿真编译选项
  16. FPM生成Allegro封装常见问题及解决方法
  17. 前端css——css三大布局模型
  18. 基于PHP的学生管理系统设计与实现
  19. 父元素设置min-height,子元素height 100%失效问题
  20. 真不戳,基于C++泛型编程的职工管理系统

热门文章

  1. 关于你,关于我. 你好 5G
  2. RMQ问题,加深对ST算法的理解(Sparse Table)
  3. mysql 一对一关联查询_学习ThinkPHP的第20天--MySQL事务操作、查询事件、一对一关联...
  4. 云栖新品|阿里云IoT发布云芯一体智能视觉解决方案
  5. 浮岛物语(FORAGER): 在 GameMaker 中做优化
  6. TTS Text-to-speech(文字转语音)服务
  7. python --> Python初阶 --> 基础语法 --> 条件和分支
  8. 利用SQLChiper对Android SQLite数据库加密
  9. mysql 如何清除sql缓存
  10. SQL基础【八、Insert】