使用 Python 擴充套件豐富 UiBot 的功能及在 UiBot 中引用 Python 模組

白菜来也發表於2020-04-28

前言

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 編碼格式:

使用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
更多RPA知識請訪問:https://www.uibot.com.cn/

相關文章