本文僅作分享之用,有任何問題或下載模塊附件請訪問原帖:https://forum.uibot.com.cn/thread-5343.htm
UiBot導入與使用模塊的方法
將 x.task 文件復制到流程文件夾中,即可在其他流程塊中引用:
在流程塊中開頭處插入 import x 和 x.Init 兩行,即可在接下來的代碼中調用其他的函數。比如:x.Complete("功能名")
如果你的流程塊中包含了多個單獨的功能函數,則需要在每個單獨的功能函數開頭處插入 x.Init。
UiBot工程常用函數函數表
序號 | 函數 | 釋義 |
---|---|---|
1 | Init() | 初始化系統,需要在每一個引用了本模塊的模塊開頭調用 |
2 | ShowErr(e) | 彈出消息框提示錯誤。參數 e:要提示的錯誤字符串 |
3 | GetErr(e) | 獲取錯誤信息。參數 e:用從 catch e 中得到的變量 e |
4 | PrintErr(e,n=0) | 打印並將錯誤信息寫入日志。參數 e:同上;參數 n:嘗試的次數,默認不打印 |
5 | Warn(s,i=2) | 輸出警告信息。參數 s:要輸出的字符串;參數 i:彈出消息提示的圖標類型,設為 -1 則不彈出消息提示 |
6 | Info(s,i=1) | 輸出提示信息。參數:同上 |
7 | Complete(name="") | 輸出完成情況。參數 name:完成的步驟的名稱 |
8 | CompleteMsgBox(name="") | 彈出完成情況消息框。參數:同上 |
9 | SheetInBook(ewb,sheet) | 檢查工作簿中是否存在相應的工作表。參數 ewb:ExcelWorkBook 對象;參數 sheet:工作表名稱字符串;返回值:是否存在相應的工作表 |
10 | RecreateSheet(ewb,sheet) | 重新創建工作表。參數:同上 |
11 | SplitEx(s,d) | 對字符串 s 進行拆分,根據 d 內的每一個字符 |
12 | SplitFine(s,d) | 對字符串 s 進行拆分,根據 d 內的每一個字符,去除結果兩端的空格,刪除空白結果 |
13 | SumNum(s) | 對"1.1+1.2"這類字符串進行求和 |
14 | ExtractNum(s) | 從字符串中提取第一個小數 |
15 | ExtractNums(s) | 從字符串中提取所有小數 |
16 | ExtractNotNum(s) | 從字符串中提取非小數部分 |
17 | DealKMB(s) | 展開 K、"M"、"B"、"k"、"m"、"b" |
18 | GetPathAvailable(path) | 獲取不重復的保存路徑 |
19 | GetPath(s) | 從完整路徑中獲取文件所在目錄的路徑 |
20 | GetFileName(path) | 取得文件名稱 |
21 | GetFileTitle(path) | 取得文件標題(即不含擴展名) |
22 | TestFile( p) | 檢測文件是否存在,如果不存在則彈出提示消息框,並退出 |
23 | TestFolder( p) | 檢測文件夾是否存在,如果不存在則彈出提示消息框,並退出 |
24 | WaitURL(hWeb,URL,times=6) | 等待指定的URL出現。參數 hWeb:瀏覽器句柄;參數 URL:指定的 URL;參數 times:嘗試的次數(每兩次嘗試的時間間隔為 500 毫秒) |
25 | GetIE() | 獲取當前已打開的 IE 瀏覽器,不存在則打開新的瀏覽器 |
26 | GetChrome() | 獲取當前已打開的 Chrome 瀏覽器,不存在則打開新的瀏覽器 |
27 | KillExcel() | 如果存在,則關閉 WPS 和 Excel 進程 |
28 | SetWindow(desc,target,xScale=0,topmost="",err=0,left=0,top=0,width=0,height=0) | 設置(左對齊的)窗口顯示方式。參數 desc:窗口程序的描述(名稱);參數 target:窗口目標;參數 xScale:橫向占比(相對於屏幕);參數 topmost:設為 TRUE 則進行窗口置頂,設為 FALSE 則取消窗口置頂,默認無動作;參數 err:當目標窗口不存在時,設為大於 0 則拋出異常,設為小於 0 則退出函數並返回 true,設為 0 則彈出消息框並退出程序;參數 left、top、width、height:忽略參數 xScale,直接設置窗口的位置與大小 |
29 | SetIE(xScale=0,topmost="",err=0,left=0,top=0,width=0,height=0) | 設置 IE 的顯示方式。參數:同上 |
30 | SetChrome(xScale=0,topmost="",err=0,left=0,top=0,width=0,height=0) | 設置 Chrome 的顯示方式。參數:同上 |
31 | SetWPS(xScale=0,topmost="",err=0,left=0,top=0,width=0,height=0) | 設置 WPS 的顯示方式。參數:同上 |
32 | SetExcel(xScale=0,topmost="",err=0,left=0,top=0,width=0,height=0) | 設置 Excel 的顯示方式。參數:同上 |
33 | SetRightWindow(desc,target,xScale=0,topmost="",err=0,left=0,top=0,width=0,height=0) | 設置右對齊的窗口顯示方式。參數:同上 |
34 | LocFile(dir,reFilename,name,sFilter,dirDef=@res"",cancel=0) | 定位文件,如果不存在則彈出打開文件對話框。參數 dir:要定位的文件所在的目錄;參數 reFilename:文件名的正則表達式字符串;參數 name:提示的文件名字符串;參數 sFilter:打開文件對話框的文件類型過濾描述字符串;參數 dirDef:打開文件對話框的默認目錄;參數 cancel:如果在打開文件對話框中點擊取消,設為大於 0 將直接退出程序,默認設為 0,將返回空字符串 |
35 | GetCSV(dir) | 獲取目錄中的第一個 CSV 文件的完整路徑 |
36 | ExcelReadAll(file) | 獲取一個指定的 Excel 表格文件中第一個工作表的內容。返回值:包含第一個工作表所有內容的二維數組 |
37 | ReadCSV(file) | 獲取一個指定的 CSV 文件的內容。返回值:包含文件所有內容的二維數組 |
38 | InArrayA(a,b) | 測試在數組 a 中是否能找到數組 b 中的元素 |
39 | InArrayN(a,b) | 返回在數組 a 中找到 b 元素的第一個位置 |
40 | A2FindRe(a,s) | 在二維數組 a 中查找匹配正則表達式 s 的元素,並返回位置 |
41 | A2GetRe(a,s) | 在二維數組 a 中獲取匹配正則表達式 s 的元素 |
42 | TransP(a) | 轉置二維數組 (a[]中不能有null元素,否則結果會出錯) |
43 | InputText(s,a=0,b=0) | 鍵入文本。參數 s:要鍵入的文本;參數 a:執行后延遲;參數 b:執行前延遲 |
44 | GetParentPath(path,n=1) | 取得路徑的上級路徑。參數 n:級數,默認為 1,則返回上一級的路徑 |
45 | FindHeader(a,b,file="") | 查找相應表頭的位置。參數 a:被查找的數據;參數 b:要查找的表頭;參數 file:如果沒有找到對應的表頭,則拋出異常提示中的文件名,默認不拋出異常 |
46 | AFind(a,b) | 在數組 a 中查找 b 中相應的元素的位置,如果沒有找到則返回 -1 |
47 | DicComp(a,b) | 字典對比 |
48 | ArrComp(a,b,partialComp=false) | 數組對比 |
49 | ARemove(a,b) | 在數組 a 中刪除 b 中相應的元素 |
50 | AReplace(a,b,c) | 在數組 a 中將匹配 b 的元素替換為 c 中相應的元素 |
51 | A2Replace(a,b,c) | 在二維數組 a 中將匹配 b 的元素替換為 c 中相應的元素 |
52 | A2Remove(a,b,n=-1) | 在二維數組 a 中刪除 n 列中 b 中相應的元素所在的行,如果 n 為 -1 則刪除所有相應的元素相應的行 |
53 | DRemove(a,b) | 在字典 a 中刪除 b 中相應的鍵 |
54 | TrySetText(text,target,a=300,b=200,times=10,desc="",causeErr=true) | 嘗試設置目標界面元素的文本。參數 text:要設置的文本;參數 target:界面元素目標;參數 a:執行后延遲;參數 b:執行前延遲;參數 times:嘗試次數;參數 desc:目標的描述(名稱),將用於拋出失敗提示;參數 causeErr:是否拋出異常;返回值:如果為 0 則設置成功,大於 0 則未設置成功 |
55 | SetText(text,target,a=300,b=200) | 設置目標界面元素的文本。參數:同上 |
56 | ATrim(a,b) | 在數組 a 中刪除 b 元素 |
57 | A2Find(a,b) | 在二維數組 a 中查找 b 中相應的元素的位置,返回找到的所有結果 |
58 | ASort(a,b=false) | 對數組 a 進行排序,b 為 TRUE 則從大到小排序,否則從小到大排序 |
59 | ADeduplicate(a) | 對數組 a 中的元素去重 |
60 | A2Comp(a,b) | 二維數組對比 |
@XP_151807:這個模塊是我編寫UiBot三個多月以來的成果,希望能夠幫到大家。