近期工作中接觸RPA(Robotic Process Automation,即機器人流程自動化)方向的項目,在做技術預研中,接觸了 UiBot 和 Automagica 這兩款流程自動化的組件。其中 UiBot 是一款成熟的軟件產品,安裝其平台后,可以直接按用戶的業務場景,通過繪制流程圖+配置動作和參數的方式,定制自動化流程場景。當然它也提供了Python、C/C++、Lua、.Net等多種編程語言的擴展接口,支持更靈活的編程式開發。它入門門檻較低,直接通過點擊就可以實現諸如瀏覽器數據抓取、文檔批量操作等一般的業務場景,非工程人員也可以快速上手使用。這里我們對UiBot不做深入介紹,而來了解一下 Automagica 這個平台。
Automagica 是一個開源智能機器人流程自動化(SRPA,Smart Robotic Process Automation)平台,借助 Automagica 的python 函數庫,可以通過簡單程序腳本實現打開各種應用程序並對應用進行操作的功能,使自動化跨平台流程變得輕而易舉。
- 安裝
方式一:通過 pip 工具安裝
如果你已經安裝過pip工具,可以使用pip命令直接進行automagica模塊的下載安裝(沒有pip工具的,可以參考鏈接:https://www.cnblogs.com/vikezhu/p/6576595.html 進行安裝):
pip install https://github.com/OakwoodAI/automagica/tarball/master
但是,我使用該方式安裝時,因為網絡原因一直超時報錯。無奈,我只能另擇他途。
方式二:安裝window軟件包
- 開發
實驗案例的業務場景是:自動打開Chrome瀏覽器,跳轉到百度首頁,然后檢索關鍵字“automagica”。
這里業務場景較簡單,我們直接使用記事本進行開發,代碼如下:
1 #!/usr/bin/python 2 # -*- coding: UTF-8 -*- 3 import sys 4 sys.path.append("C:\MySoftware\Automagica2.0\pkgs") 5 #引入automagica 模塊 6 from automagica import * 7 #引入selenium 模塊 8 from selenium import webdriver 9 10 #創建chrome瀏覽器實例,跳轉到百度首頁 11 #browser = Chrome() 12 browser = webdriver.Chrome() 13 browser.get('https://baidu.com/') 14 #獲取搜索輸入框,嵌入關鍵字automagica 15 search_input = browser.find_element_by_name('wd') 16 search_input.send_keys("automagica") 17 #獲取檢索按鈕,點擊 18 search_btn = browser.find_element_by_id('su') 19 search_btn.click()
- 說明
## 第4行:sys.path.append("C:\MySoftware\Automagica2.0\pkgs")
## 第6行:from automagica import *
## 第8行:from selenium import webdriver
## 第13~18行:browser 和頁面元素的API
這幾行都是瀏覽器的相關操作,包括輸入字符、點擊等動作。詳情請參考官方參考文檔:https://github.com/oakwoodai/automagica 中Activities部分。