Home
Posts
Categories
Series
Tags
About
RPA,過去工作經驗分享
postedOn: 2023-7-16   updatedOn: 2023-7-16   includedIn: 程式
wordsCount: 712   readingTime: 2 mins   viewers:

RPA

機器流程自動化,以程式模擬人類操作系統,去取代人工達成自動化

白話:能自動打怪的外掛

為何能存在

當公司內部有多系統,之間需要交流資訊,而系統都非自建,RPA是一種不錯的膠水,因不可能把所有系統重一整套, 資料庫如果也不開放外部連入,或者即使能連入,不敢確定程式如何與表連動,直接對底層做寫入,可能有異常問題, 那這種方式是一種選擇

機緣

工作上剛好需要我需要將資料放入一個ERP系統,因為有使用selenium做爬蟲,其實也類似對網站自動化抓取, 於是一開始用python做RPA,發現有很多困難點,是爬蟲不會遇到的,尤其我要做的是全自動,人工完全不介入

難點

非侵入式的操作系統

有沒有遇到問題,程式本身不會知道,即使查詢log,也無法直接看出問題, 因為系統不會跟你的程式互動(至少爬蟲還有瀏覽器的反饋), 就像瞎眼讓你打鍵盤,解決方法就是加上眼睛,以非傳統方式紀錄,協助判斷問題

大量的畫面判斷

要以畫面定位方式,確認按鈕位置或數字

當系統改變就要立刻改變RPA程式

這一點跟爬蟲類似,依附在別人的系統上,要隨即應變

工作後期:

發現以python做開發速度真的太慢,尤其做畫面判斷,自己需要做圖片定位,對圖片數字判斷後期壓到2~5趴錯誤率,還是覺得不好用, 後來學習UiPath,國外成熟的RPA軟體,開發速度才快又穩定

個人看法:

與資料庫溝通,是資料存取最準確的方式,真的沒辦法再採用這種間接的方式,這個方式有一個很大的缺點,就是速度,當工作量大時, 只能多開電腦並行操作系統,也必須卡在模擬操作的繁複性,以資源與時間利用率觀點是很浪費

如果能對資料庫操作,只要一台電腦,跑多進程或多線程,就能以更佳的方式解決,但在工作方式上,還是不失為解決問題的一種手段