使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊


前言

UiBot除了自帶的強大功能外,還允許有編程經驗的RPA開發人員對功能進行自由擴展,目前UiBot支持以下四種擴展方式:

Python插件、Lua插件、Lua Mod插件、COM插件(.Net也使用這種方式擴展)

本文將為大家講解如何開發Python插件及如何在UiBot中引用Python插件擴展豐富UiBot的功能。

Python插件開發教程

1、下載UiBot軟件

登錄UiBot官網下載安裝

2、插件開發快速上手

打開 UiBot 安裝目錄下的 extend \ python 目錄,在這個目錄下創建 test.py 文件(記得修改文件擴展名),使用記事本打開這個文件,寫入如下代碼:

def Add(n1, n2):
    return n1 + n2

然后將文件另存為 utf-8 編碼格式:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

插件保存后,打開 UiBot 在源代碼視圖寫入代碼:

Import test
traceprint test.add(1, 1)

運行 UiBot 腳本,運行后結果如下(輸出2)代表插件調用正常:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

如果運行結果不正常,可根據輸出窗格的報錯提示嘗試解決,如果報錯為 模塊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擴展豐富UiBot的功能及在UiBot中引用Python模塊

安裝 Python 時需要勾選 Add Python 3.7 to PATH,然后點擊 Install Now 安裝即可:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

然后在機器上安裝 VS Code,下載地址:https://code.visualstudio.com/

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

VS Code 安裝完成后,是英文版本:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

點擊 VS Code 左側邊欄上方最后一個按鈕(見截圖),然后在搜索框里輸入 Chinese,找到簡體中文語言包安裝:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

安裝完成后,VS Code 會提示是否重啟編輯器使語言包生效,重啟后軟件即可顯示為中文:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

如果這步完成后語言沒有切換成功,可以按熱鍵 Ctrl + Shift + P,搜索 Configure Display Language,配置顯示語言:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

將紅圈選中的內容更改為 zh-cn,保存文件后重啟 VS Code,即可更換為中文顯示:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

VS Code 和 Python 都安裝完成后,使用 VS Code 打開任意 py 后綴的文件,會自動提示是否安裝 Python 開發環境

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

Python 擴展安裝完成后,VS Code 還會要求你安裝 pylint,這是在 VS Code 開發時用於語法錯誤檢查的組件,可以根據自己的需求選擇是否安裝。

以上步驟操作后,使用 VS Code 的 Python 開發環境就部署完畢了,編寫代碼,然后F5運行看看效果吧。

4、Python 插件測試:

在 Python 文件中寫入如下代碼,這段代碼在 UiBot 環境下是不會運行的,但在 Python 調試狀態下會運行,以此實現更便捷的 Python 擴展庫調試:

# 測試代碼
if __name__ == '__main__':
    print(123)

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

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命令,我們可以看到如下信息:

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

其中 Location代表當前開發環境第三方庫的安裝位置,Requires代表requests模塊的依賴,我們需要進到Location目錄下,將對應模塊(包含自身)拷貝到UiBot安裝目錄下的\lib\site-packages之中

Location對應目錄

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

UiBot對應目錄

使用Python擴展豐富UiBot的功能及在UiBot中引用Python模塊

如此,我們即可正常的在UiBot之中使用依賴。

原文地址:https://forum.uibot.com.cn/thread-51.htm


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM