【Uipath教學】UiPath 整合 Python 腳本:提升 RPA 處理能力與流程彈性

更新 發佈閱讀 9 分鐘

這陣子開始密集在接觸Uipath,也開始有一些研究跟心得,在執行RPA的流程時,會發現RPA本身有一些侷限,它可以模擬人類去操作介面點選,但例如資料處理的完整度就沒有python pandas來得高,此時就可以使用Uipath搭配Python的方法來搭建流程,讓整個流程更方便處理。

執行python腳本的兩種方法:

  1. 在Uipath內下載python擴充套件,使用python區塊
  2. 內建的區塊:Start Process

由於篇幅關係今天先來分享第一種方法。

在Uipath中下載py擴充套件的python功能會比較多元,各位可以先使用這個當作執行python的方法。

在開始前你先要有:

  • 已安裝uipath studio
  • 已安裝python
  • 已安裝.net
  • 如果你的python版本是3.9以上,必須下載.net 6.0版本

Uipath Studio下載python擴充套件

接下來會先分享如何在Uipath Studio中安裝pyhton擴中套件,並寫一個示範的python腳本,並讓Uipath可以順利執行這個腳本。

打開Uipath Studio空白專案後,上方會有一個Manage Packages的按鈕,點選後會跳出以下視窗:
- 點選All Packages
- 搜尋Python,點選Uipath.Python.Activies
- 右邊點選版本 按Install (目前最新版本1.10.0,還有另一個2.0.0-preview不是穩定版本我就下載那版)
- Install之後,下方的Save才可以點選,記得點選才會進行套件下載

點選Install

點選Install

Install後點選Save

Install後點選Save

python套件下載畫面

python套件下載畫面


在Uipath中拉取python流程

先新增一個空白頁面,選擇Flowchart (註:這裡有很多種類型可以做點選,之後會有別的文章再詳細做種類的介紹)。

在Activities當中,App Invoker有一欄python,把Python Scope拉取出來放到Flowchart頁面中如下圖:(記得把箭頭從Start拉到Python Scope才會流程連起來)

要執行python的動作,都要把流程放進python Scope中,這是Uipath的規則。
vocus|新世代的創作平台
vocus|新世代的創作平台

在python scope中,點選它,右邊會出現Properties的區塊讓你做細部的設定操作,而在這邊Library path, Path, Target, version選項較為重要,當初也花了一點時間做嘗試。
- Library path :python下載在你電腦的路徑並且要.dll 結尾的檔案。
- Path:python下載在你電腦的路徑。
- Target:python版本3.9以上選擇x64。
- Version:確定版本可以選擇該版本,不要使用預設的auto。(我的py版本3.12)

這部設定完成之後,才能繼續拉取相關的python功能。

接續剛才Library path的設定,要如何取得python下載的路徑位置呢?
可以打開 終端機:where python,第一行便顯示python路徑位置,到該資料夾
C:\Users\User\AppData\Local\Programs\Python\Python312
會看到裡面有一個python312.dll,這便是Library path需要的檔案路徑(如下圖)
上面顯示的是我的範例位置,各位的實際位置還是要照上述所說步驟去取得囉!

那以我的例子來說
我的Library Path就會是C:\Users\User\AppData\Local\Programs\Python\Python312\python312.dll
Path會是: C:\Users\User\AppData\Local\Programs\Python\Python312
終端機輸入指令

終端機輸入指令

到該資料夾會看到.dll檔案

到該資料夾會看到.dll檔案

以上為python scope的設定。

接下來將會設定:你要跑的py腳本在哪邊?,要呼叫的function名稱?,要帶入的參數?及接收回傳回來的值。

將python scope拉出來後,對它雙左鍵點擊,就會展開這個方框,裡面我們會需要再將
1. Load Python Script放進Do方框中
2. Invoke Python Method放進Do方框中
3. Get Python Object放進Do方框中
而這三個方框的Properties也都是重要的一環,是可否跑成功的關鍵因素。我將依各個區塊做詳細解說。

vocus|新世代的創作平台

Python範例腳本

在開始做uipath細節設定之前,記得先準備好python腳本,這邊我簡單寫一個腳本,各位可自行套用你們的腳本跟uipath做串連。
test.py

import traceback

def sum(a, b) -> str:
    try:
        result = a + b
        return str(result)
    except Exception as e:
        print(f"Error occurred: {e}")
        return "Error: " + traceback.format_exc()

Properties細節設定

Load Python Script區塊

區塊內需要放py腳本完整路徑(用字串""包住),區塊中填寫的值等於Properties中的File欄位喔。
接下來還需要設定Output -> Result,需要創立一個變數讓Load出來的腳本存放結果
我這邊創立out_py_obj變數,Data Type需選PythonObject

vocus|新世代的創作平台

Invoke Python Method 區塊

區塊需填寫function的名稱(用字串""包住),等於Properties中的Name欄位。我要使用python的sum function所以填"sum"
InputParameters: 要放sum function要傳的參數,在uipath中需使用New Object() {}將值放在大方框中才能順利傳給python。以我這邊的例子就是New Object() {2, 3}
Instance: 這裡要放上一步Load Python Script中Result的變數:out_py_obj
Result: 這裡則須再創建一個新的變數來存放python return回來的結果。 我這邊創立out_result_py變數,Data Type一樣是PythonObject

vocus|新世代的創作平台

Get Python Object區塊

這個區塊填寫上一步Invoke Python Method中Result的變數:out_result_py(目的是想解析回傳回來的值),等於Properties中的PythonObject欄位。
Type argument: 選回傳回來的值的型別,我python寫的function會回傳字串,sum(a, b) -> str,這裡便選String。
Result: 這裡比較特別是他要再轉換成.net的型別才能正常顯示回傳結果,所以還需再創立變數,這裡取out_donet,Data Type就選String。

vocus|新世代的創作平台


最後我加上log Message區塊來查看執行結果,結果確定印出log為5代表成功!

補:在流程中必要的地方加上log是之後debug很重要的依據~
vocus|新世代的創作平台

結論:

上面介紹中提到很多Properties的區塊做細部的設定操作,在Uipath中是這樣的設計,除了拉選左邊的功能出來之後,右邊其實還有很多細節需要注意跟完成設定,否則很容易卡關,這也是很多人學習Uipath卡關的其中一個原因。需要多加注意就可以更進步的拉流程~

之後會再分享另一種執行python腳本的方式:)
有遇到問題歡迎留言討論!


留言
avatar-img
會計自動化研究社
31會員
28內容數
致力於交流【VBA|RPA自動化|會計實務】的學習社群。
你可能也想看
Thumbnail
微軟的自動化流程工具 Power Automate 是一個強大的雲端平台,專為企業設計,旨在簡化流程並提升效率。 以下是對其功能、特色、應用場景、定價及學習資源的詳細說明: ---------------------------------------- 一、核心功能與特色 1. 多重
Thumbnail
微軟的自動化流程工具 Power Automate 是一個強大的雲端平台,專為企業設計,旨在簡化流程並提升效率。 以下是對其功能、特色、應用場景、定價及學習資源的詳細說明: ---------------------------------------- 一、核心功能與特色 1. 多重
Thumbnail
RPAI 數位優化器先前有分享過如何在 UiPath 儲存資料,也就是宣告全新的儲存空間並將資料填入,例如有鍵-值對應關係的字典(dictionary)。而列表(List)也是另一種常見做法,因此這篇文章將分享如何使用 UiPath 的列表功能,讓我們在進行 RPA 流程開發時能夠更加順暢、有效率!
Thumbnail
RPAI 數位優化器先前有分享過如何在 UiPath 儲存資料,也就是宣告全新的儲存空間並將資料填入,例如有鍵-值對應關係的字典(dictionary)。而列表(List)也是另一種常見做法,因此這篇文章將分享如何使用 UiPath 的列表功能,讓我們在進行 RPA 流程開發時能夠更加順暢、有效率!
Thumbnail
初學者有時候無法順利執行RPA流程,可能只是因為未能留意系統的預設情況,因此我們在日期與時間(基礎篇)中,先簡單說明基本的時間格式與設定方法,協助初學者進行除錯,而進階篇則將透過實際操作,讓已經熟悉UiPath的學習者能靈活應用、加深印象!
Thumbnail
初學者有時候無法順利執行RPA流程,可能只是因為未能留意系統的預設情況,因此我們在日期與時間(基礎篇)中,先簡單說明基本的時間格式與設定方法,協助初學者進行除錯,而進階篇則將透過實際操作,讓已經熟悉UiPath的學習者能靈活應用、加深印象!
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
背景:從冷門配角到市場主線,算力與電力被重新定價   小P從2008進入股市,每一個時期的投資亮點都不同,記得2009蘋果手機剛上市,當時蘋果只要在媒體上提到哪一間供應鏈,隔天股價就有驚人的表現,當時光學鏡頭非常熱門,因為手機第一次搭上鏡頭可以拍照,也造就傳統相機廠的殞落,如今手機已經全面普及,題
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
這是一場修復文化與重建精神的儀式,觀眾不需要完全看懂《遊林驚夢:巧遇Hagay》,但你能感受心與土地團聚的渴望,也不急著在此處釐清或定義什麼,但你的在場感受,就是一條線索,關於如何找著自己的路徑、自己的聲音。
Thumbnail
在日常資料處理中,統計數量、加總金額、計算平均值等動作常常重複進行。若能透過 VBA 一鍵完成統計並產出摘要,不僅節省時間,也能避免公式錯誤與人工疏漏。本文將教你如何建立一個「一鍵統計」功能,自動計算指定欄位的統計值並輸出至摘要區塊。
Thumbnail
在日常資料處理中,統計數量、加總金額、計算平均值等動作常常重複進行。若能透過 VBA 一鍵完成統計並產出摘要,不僅節省時間,也能避免公式錯誤與人工疏漏。本文將教你如何建立一個「一鍵統計」功能,自動計算指定欄位的統計值並輸出至摘要區塊。
Thumbnail
自動化不是工程師的專利 很多人以為「自動化」聽起來很高深,好像一定要會寫程式,甚至要懂 API 才能開始。事實上,現代的 AI 與自動化工具設計得越來越簡單,幾乎只要拖拉、點選,就能完成一個流程。 這篇文章要分享五個 上班族最實用的自動化場景,你完全不用會寫程式,就能立即上手。 場景一:Em
Thumbnail
自動化不是工程師的專利 很多人以為「自動化」聽起來很高深,好像一定要會寫程式,甚至要懂 API 才能開始。事實上,現代的 AI 與自動化工具設計得越來越簡單,幾乎只要拖拉、點選,就能完成一個流程。 這篇文章要分享五個 上班族最實用的自動化場景,你完全不用會寫程式,就能立即上手。 場景一:Em
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
本文分析導演巴里・柯斯基(Barrie Kosky)如何運用極簡的舞臺配置,將布萊希特(Bertolt Brecht)的「疏離效果」轉化為視覺奇觀與黑色幽默,探討《三便士歌劇》在當代劇場中的新詮釋,並藉由舞臺、燈光、服裝、音樂等多方面,分析該作如何在保留批判核心的同時,觸及觀眾的觀看位置與人性幽微。
Thumbnail
通常大家聯想到 RPA,都會直覺認為其需給予明確指令和動作,本身並不具備獨立判斷的能力,因此 RPAI 數位優化器便希望透過分享這篇文章,和大家聊聊 RPA 的技術發展及該如何與人工智能協作,以及 RPA 如何在不同產品週期產生更大的效益。
Thumbnail
通常大家聯想到 RPA,都會直覺認為其需給予明確指令和動作,本身並不具備獨立判斷的能力,因此 RPAI 數位優化器便希望透過分享這篇文章,和大家聊聊 RPA 的技術發展及該如何與人工智能協作,以及 RPA 如何在不同產品週期產生更大的效益。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
《轉轉生》(Re:INCARNATION)為奈及利亞編舞家庫德斯.奧尼奎庫與 Q 舞團創作的當代舞蹈作品,結合拉各斯街頭節奏、Afrobeat/Afrobeats、以及約魯巴宇宙觀的非線性時間,建構出關於輪迴的「誕生—死亡—重生」儀式結構。本文將從約魯巴哲學概念出發,解析其去殖民的身體政治。
Thumbnail
EXCEL檔內之資料明細,利用函數自動算出各項統計數值後,作成所需的統計報表,以節省時間,避免人為錯誤,提升作業效率。
Thumbnail
EXCEL檔內之資料明細,利用函數自動算出各項統計數值後,作成所需的統計報表,以節省時間,避免人為錯誤,提升作業效率。
Thumbnail
使用 UiPath 進行 RPA 流程開發時,如果能養成「將會使用到的基本路徑、參數事先定義」的好習慣,需要使用時即可直接調用,有效提升 RPA 流程開發效率!字典(Dictionary)可說是極為實用且方便的工具,讓我們得以快速查找指定資訊,因此RPAI 數位優化器今天要分享如何宣告新字典的技巧!
Thumbnail
使用 UiPath 進行 RPA 流程開發時,如果能養成「將會使用到的基本路徑、參數事先定義」的好習慣,需要使用時即可直接調用,有效提升 RPA 流程開發效率!字典(Dictionary)可說是極為實用且方便的工具,讓我們得以快速查找指定資訊,因此RPAI 數位優化器今天要分享如何宣告新字典的技巧!
追蹤感興趣的內容從 Google News 追蹤更多 vocus 的最新精選內容追蹤 Google News