阿里云首页 机器人流程自动化RPA

F(x)

catch

catch(title, mode='start', process_name=None, class_name=None, timeout=10)

方法描述

根据标题捕获窗口对象

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

process_name<str>进程名称

class_name<str>窗口类名

timeout<int>等待窗口超时时间 单位秒

返回值说明

返回窗口对象<Window>

调用样例- rpa.ui.win32.catch-

# 注意事项:使用此方法需要确保对应程序窗口已打开
# 代码调用样例如下:
wnd = rpa.ui.win32.catch('钉钉',mode='exact',process_name='DingTalk')

click

click(x=None, y=None, button='left')

方法描述

鼠标点击

参数说明

button<str>鼠标键位

可选项:

  • left : 左键

  • right : 右键

调用样例- rpa.ui.win32.click-

# 注意事项:无
# 代码调用样例如下:
rpa.ui.win32.click(x=500,y=500,button='left')

double_click

double_click(x=None, y=None)

方法描述

鼠标双击

调用样例- rpa.ui.win32.double_click-

# 注意事项:无
# 代码调用样例如下:
rpa.ui.win32.double_click(x=500,y=500)

drive_input

drive_input(value, replace=True, wait_mili_seconds=20, timeout=10)

方法描述

以驱动输入的方式直接输入文本

参数说明

value<str>输入的内容

replace<bool>是否清空之前的内容

wait_mili_seconds<int>字符间输入间隔(毫秒),仅在模拟输入下有效,默认值为20,最大值100,该值设置过大可能会引起超时

timeout<int>等待控件超时时间

调用样例- rpa.ui.win32.drive_input-

# 注意事项:驱动输入需要以管理员权限执行,应用涉及驱动输入时,请使用管理员身份打开编辑器及机器人
# 代码调用样例如下:
rpa.ui.win32.drive_input("test")

mouse_move

mouse_move(x, y)

方法描述

鼠标移动

调用样例- rpa.ui.win32.mouse_move-

# 注意事项:无
# 代码调用样例如下:
rpa.ui.win32.mouse_move(500,500)

capture

capture(file, x1, y1, x2, y2)

方法描述

屏幕截图

调用样例- rpa.ui.win32.capture-

# 注意事项:无
# 代码调用样例如下:
path =  r'D:\2_测试文件归档\屏幕截图.jpg'
rpa.ui.win32.capture(path,0,0,500,500)

send_key

send_key(key)

方法描述

发送按键

参数说明

key<str>按键内容

调用样例- rpa.ui.win32.send_key-

# 注意事项:无
# 代码调用样例如下,本例中会向记事本窗口发送按键文本:
wnd = rpa.ui.win32.catch('test.txt - 记事本')
wnd.activate()
​
rpa.ui.win32.send_key("TEST")

win_activate

win_activate(title, mode='start')

方法描述

窗口激活

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

调用样例- rpa.ui.win32.win_activate-

# 注意事项:使用此方法需要确认存在对应窗口进程
# 代码调用样例如下,此例中会将记事本窗口激活置顶:
rpa.ui.win32.win_activate("test.txt - 记事本")

win_maximize

win_maximize(title, mode='start')

方法描述

窗口最大化

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

调用样例- rpa.ui.win32.win_maximize-

# 注意事项:使用此方法需要确认存在对应窗口进程
# 代码调用样例如下,此例中会将记事本窗口最大化:
rpa.ui.win32.win_minimize("test.txt - 记事本")

win_minimize

win_minimize(title, mode='start')

方法描述

窗口最小化

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

调用样例- rpa.ui.win32.win_minimize-

# 注意事项:使用此方法需要确认存在对应窗口进程
# 代码调用样例如下,此例中会将记事本窗口最小化:
rpa.ui.win32.win_minimize("test.txt - 记事本")

win_hide

win_hide(title, mode='start')

方法描述

窗口隐藏

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

调用样例- rpa.ui.win32.win_hide-

# 注意事项:此方法会将窗口从任务栏移除,之后仅能在任务管理器进程中查看到
# 代码调用样例如下:
rpa.ui.win32.win_hide("test.txt - 记事本")

win_show

win_show(title, mode='start')

方法描述

窗口显示

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

调用样例- rpa.ui.win32.win_show-

# 注意事项:无
# 代码调用样例如下:
rpa.ui.win32.win_show("test.txt - 记事本")

win_exists

win_exists(title, mode='start')

方法描述

窗口是否存在

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

返回值说明

返回窗口是否存在<bool>

调用样例- rpa.ui.win32.win_exists-

# 注意事项:无
# 代码调用样例如下:
exist_flag = rpa.ui.win32.win_exists("test.txt - 记事本")

win_close

win_close(title, mode='start')

方法描述

窗口关闭

参数说明

title<str>窗口标题

mode<str>窗口匹配模式

可选项:

  • start : 头匹配

  • substr : 包含

  • exact : 完全匹配

  • reg : 正则表达式匹配

调用样例- rpa.ui.win32.win_close-

# 注意事项:无
# 代码调用样例如下:
rpa.ui.win32.win_close("test.txt - 记事本")

win_wait_appear

win_wait_appear(title, timeout=30)

方法描述

等待窗口出现

参数说明

title<str>窗口标题

timeout<int>超时时间

调用样例- rpa.ui.win32.win_wait_appear-

# 注意事项:无
# 代码调用样例如下:
rpa.ui.win32.win_wait_appear("test.txt - 记事本",timeout=10)

win_wait_disappear

win_wait_disappear(title, timeout=30)

方法描述

等待窗口消失

参数说明

title<str>窗口标题

timeout<int>超时时间 单位秒

调用样例- rpa.ui.win32.win_wait_disappear-

# 注意事项:无
# 代码调用样例如下:
rpa.ui.win32.win_wait_disappear("test.txt - 记事本",timeout=10)

elem_input_text

elem_input_text(element, value, index=1, parent_element=None, simulate=True, replace=True, send_window_message=True, sent_raw=False, wait_mili_seconds=20, timeout=10)

方法描述

向控件输入文本

参数说明

element<str>控件名

value<str>输入的内容

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

simulate<bool>是否模拟输入

replace<bool>是否清空之前的内容

send_window_message<bool>是否发送Windows消息

sent_raw<bool>是否发送原始按键

wait_mili_seconds<int>字符间输入间隔(毫秒),仅在模拟输入下有效,默认值为20,最大值100,该值设置过大可能会引起超时

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_input_text-

# 注意事项:
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
text = "RPA_测试"
rpa.ui.win32.elem_input_text("记事本输入区",text)

elem_input_hotkeys

elem_input_hotkeys(element, value, index=1, parent_element=None, timeout=10)

方法描述

向控件输入快捷键

参数说明

element<str>控件名

value<str>输入的内容

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_input_hotkeys-

# 注意事项:
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 虚拟键写法请参考:https://www.yuque.com/aliyun_rpa/quzm63/vk
# 代码调用样例如下:
rpa.ui.win32.elem_input_hotkeys("记事本输入区","VK_RETURN")

elem_drive_input

elem_drive_input(element, value, index=1, replace=True, parent_element=None, wait_mili_seconds=20, timeout=10)

方法描述

以驱动输入的方式向控件中输入文本

参数说明

element<str>控件名

value<str>输入的内容

index<int>如果有多个,给出控件下标

replace<bool>是否清空之前的内容

parent_element<Element>父控件对象

wait_mili_seconds<int>字符间输入间隔(毫秒),仅在模拟输入下有效,默认值为20,最大值100,该值设置过大可能会引起超时

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_drive_input-

# 注意事项:驱动输入需要以管理员权限执行,应用涉及驱动输入时,请使用管理员身份打开编辑器及机器人
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_drive_input("记事本输入区","TEST")

elem_click

elem_click(element, index=1, simulate=True, button='left', parent_element=None, timeout=10)

方法描述

点击控件

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

simulate<bool>是否模拟点击

button<str>鼠标键位

可选项:

  • left : 左键

  • right : 右键

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_click-

# 注意事项:
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_click("记事本输入区")

elem_get_checked_state

elem_get_checked_state(element, index=1, parent_element=None, timeout=10)

方法描述

获取复选框状态

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

返回值说明

返回复选框的状态<bool>

调用样例- rpa.ui.win32.elem_get_checked_state-

# 注意事项:
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
flag = rpa.ui.win32.elem_get_checked_state("复选框")

elem_set_checked_state

elem_set_checked_state(element, value=True, index=1, parent_element=None, timeout=10)

方法描述

设置复选框状态

参数说明

element<str>控件名

value<bool>传入True则勾选,传入False取消勾选

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_set_checked_state-

# 注意事项:
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_set_checked_state("复选框",value=False)

elem_text

elem_text(element, index=1, parent_element=None, timeout=10)

方法描述

获取控件中的文本

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

返回值说明

返回文本<str>

调用样例- rpa.ui.win32.elem_text-

# 注意事项:
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_text("标题栏")

get_element_by_name

get_element_by_name(element, index=1, parent_element=None, timeout=10)

方法描述

根据控件名获取控件对象

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

返回值说明

返回控件对象<Element>

调用样例- rpa.ui.win32.get_element_by_name-

# 注意事项:无
# 代码调用样例如下:
element = rpa.ui.win32.get_element_by_name("记事本输入区")

elem_count

elem_count(element, parent_element=None, timeout=10)

方法描述

获取控件个数

参数说明

element<str>控件名

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

返回值说明

返回控件个数<int>

调用样例- rpa.ui.win32.elem_count-

# 注意事项:
# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
count = rpa.ui.win32.elem_count("复选框")

elem_wait_loaded

elem_wait_loaded(element, index=1, timeout=10)

方法描述

等待加载控件,成功返回True,失败返回False

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

timeout<int>等待控件超时时间 单位秒

返回值说明

返回是否加载成功<bool>

调用样例- rpa.ui.win32.elem_wait_loaded-

# 注意事项:使用此方法时,如果超过timeout设定的时间仍未定位到对应控件,则返回False
# 代码调用样例如下:
flag = rpa.ui.win32.elem_wait_loaded("记事本输入区")

elem_double_click

elem_double_click(element, index=1, parent_element=None, timeout=10)

方法描述

双击控件

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_double_click-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_double_click("记事本输入区")

elem_mouse_move

elem_mouse_move(element, index=1, timeout=10)

方法描述

鼠标移入控件

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_mouse_move-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下,此例中鼠标会移入到记事本编辑区中心位置:
rpa.ui.win32.elem_mouse_move("记事本输入区")

elem_pos

elem_pos(element, index=1, timeout=10)

方法描述

获取控件的坐标

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

timeout<int>等待控件超时时间 单位秒

返回值说明

返回坐标{x1,y1,x2,y2}<dict>

调用样例- rpa.ui.win32.elem_pos-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
pos_dict = rpa.ui.win32.elem_pos("记事本输入区")

elem_get_selected_items

elem_get_selected_items(element, mode='all', index=1, parent_element=None, timeout=10)

方法描述

获取combobox的所有选项或者所有选中的选项

参数说明

element<str>控件名

mode<str>选择模式

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

返回值说明

返回选项的数组<list>

调用样例- rpa.ui.win32.elem_get_selected_items-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
option_list = rpa.ui.win32.elem_get_selected_items("combox选项框")

elem_set_selected_item_by_text

elem_set_selected_item_by_text(element, text, index=1, parent_element=None, timeout=10)

方法描述

combobox--根据指定文本选中下拉列表中的项

参数说明

element<str>控件名

text<str>选项文本

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_set_selected_item_by_text-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_set_selected_item_by_text("combox选项框","选项1")

elem_get_datetimepicker

elem_get_datetimepicker(element, index=1, parent_element=None, timeout=10)

方法描述

获取日期控件时间

参数说明

element<str>控件名

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

返回值说明

返回日期控件时间[年,月,日,时,分,秒]<list>

调用样例- rpa.ui.win32.elem_get_datetimepicker-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_get_datetimepicker("标准日期控件")

elem_set_datetimepicker

elem_set_datetimepicker(element, year=1970, month=1, day=1, hour=0, minute=0, second=0, index=1, parent_element=None, timeout=10)

方法描述

设置日期控件时间

参数说明

element<str>控件名

year<int>

month<int>

day<int>

hour<int>

minute<int>

second<int>

index<int>如果有多个,给出控件下标

parent_element<Element>父控件对象

timeout<int>等待控件超时时间 单位秒

调用样例- rpa.ui.win32.elem_set_datetimepicker-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
rpa.ui.win32.elem_set_datetimepicker("标准日期控件",year=2021,month=5,day=1,hour=0,minute=0,second=0)

save_file_dialog

save_file_dialog(path, title='保存文件')

方法描述

打开保存文件弹框

参数说明

path<str>文件保存路径

title<str>窗口标题(正则匹配) 默认'保存文件'

调用样例- rpa.ui.win32.save_file_dialog-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
path = r"D:\2_测试文件归档\文件下载测试.txt"
rpa.ui.win32.elem_click("下载按钮")
​
rpa.ui.win32.save_file_dialog(path,title='保存文件')

open_file_dialog

open_file_dialog(path, title='打开文件')

方法描述

打开上传文件弹框

参数说明

path<str>文件保存路径

title<str>窗口标题(正则匹配) 默认'打开文件'

调用样例- rpa.ui.win32.open_file_dialog-

# 使用此方法前需通过捕捉控件功能捕捉要操作的界面元素
# 此方法执行时,需确认对应窗口已打开(窗口标题要与捕捉控件时控件对应的窗口标题一致)
# 代码调用样例如下:
path = r"D:\2_测试文件归档\打开文件测试.txt"
rpa.ui.win32.elem_click("打开文件按钮")
​
rpa.ui.win32.save_file_dialog(path,title='打开文件'