目录



win32


支持与rpa.ie.win32中完全一致的sdk,同时提供了一套新的调用方式,相同的调用方式不再赘述,这里将介绍新的调用方式


catch

方法名

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


方法描述

根据标题捕获窗口对象,复制窗口进程名和窗口类名可增加匹配效率和准确率,如果匹配到多个窗口会报错,返回Window对象


版本信息

该方法适用于从3.4.2及以上版本。


参数说明


返回值说明

返回一个win32窗口的对象。


示例

import rpa3 as rpa # 使用V3引擎
#捕捉窗口名为xx的窗口
wnd = rpa.win32.catch('xx')



Window

window : 负责为用户提供window相关的一些操作

window中的操作我们用 wnd 表示对象


activate

方法名

activate(self)


方法描述

激活窗口


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.activate()


win_activate

方法名

win_activate(title,*,mode='start')


方法描述

激活窗口


版本信息

该方法适用于从3.4.2及以上版本版。


参数说明


返回值说明


示例

# 打开了ie浏览器
page = rpa.ie.create("www.baidu.com")
# 激活窗口
rpa.win32.win_activate("百度一下",mode='start')#默认为'start',可省略


maximize

方法名

maximize(self)


方法描述

最大化窗口


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.maximize()


win_maximize

方法名

win_maximize(title,*,mode='start')


方法描述

窗口最大化


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

# 最大化窗口
rpa.win32.win_maximize("百度一下",mode='start')#默认为'start',可省略


minimize

方法名

minimize(self)


方法描述

最小化窗口


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wmd.minimize()


win_minimize

方法名

win_minimize(title,*,mode='start')


方法描述

窗口最小化


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

# 最小化窗口
rpa.win32.win_minimize("百度一下",mode='start')#默认为'start',可省略


hide

方法名

hide(self)


方法描述

隐藏窗口


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.hide()


win_hide

方法名

win_hide(title,*,mode='start')


方法描述

窗口隐藏,在任务栏不显示


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

# 隐藏窗口
rpa.win32.win_hide("百度一下",mode='start')#默认为'start',可省略


show

方法名

show(self)


方法描述

窗口显示


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.show()


win_show

方法名

win_show(title,*,mode='start')


方法描述

窗口显示


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

# 显示窗口
rpa.win32.win_show("百度一下",mode='start')#默认为'start',可省略


win_exists

方法名

win_exists(title,*,mode='start')


方法描述

窗口是否存在


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回窗口是否存在


示例

# 判断窗口是否存在
if rpa.win32.win_exists("百度一下",mode='start'):   #默认为'start',可省略
    pass


win_appear

方法名

winappear(title, *, timeout=30)


方法描述

等待窗口出现


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

# 等待窗口消失
rpa.win32.win_disappear("百度一下",timeout=10)



win_disappear

方法名

win_disappear(title, *, timeout=30)


方法描述

等待窗口消失


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

# 等待窗口消失
rpa.win32.win_disappear("百度一下",timeout=10)


close

方法名

close(self)


方法描述

关闭窗口


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.close()


win_close

方法名

win_close(title,*,mode='start')


方法描述

关闭窗口


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

# 等待窗口消失
rpa.win32.win_close("百度一下",mode='start')#默认为'start',可省略


get_element

方法名

get_element(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取控件对象


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回控件对象。


示例

element_obj = wnd.get_element('控件名称')


element_count

方法名

get_element(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取控件对象个数


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回控件对象个数。


示例

count = wnd.element_count('控件名称')


wait

方法名

wait(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

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


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回控件是否加载成功。


示例

isWait = wnd.wait('控件名称')


input

方法名

input(element, value, *, index=1, simulate=True, replace=True,sendWindowMessage=True, parent_element=None, timeout=10)


方法描述

输入


版本信息

该方法适用于从3.4.2及以上版本版。


参数说明


返回值说明


示例

#模拟覆盖输入"aa"
wnd.input("控件名称", "aa", simulate=True, replace=True)
#模拟追加输入"aa"
wnd.input("控件名称", "aa")  #简略的写法
wnd.input("控件名称", "aa", simulate=True, replace=False)
#非模拟覆盖输入"aa"
wnd.input("控件名称", "aa", simulate=False, replace=True)
#非模拟追加输入"aa"
wnd.input("控件名称", "aa")  #简略的写法
wnd.input("控件名称", "aa", simulate=False, replace=False)


input_text

方法名

input_text(element, value, *, index=1, replace=True, parent_element=None, timeout=10)


方法描述

输入文本


版本信息

该方法适用于从3.4.7及以上版本


参数说明


返回值说明


示例

element_value =  [
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "name", "pattern": "Equal", "value": "阿里云RPA Studio"}, {"name": "nth-child", "pattern": "Equal", "value": "3"}], "name": "Window", "props": [{"name": "title", "pattern": "Contain", "value": "阿里云RPA Studio"}, {"name": "id", "pattern": "Equal", "value": "ShadowMainForm"}, {"name": "app", "pattern": "Equal", "value": "AliRPA"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "panelBorder"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_panel_Container"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "DevelopView"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "4"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_panel_Right"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_elementsPanel"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.b.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "4"}], "name": "Edit", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_btn_Filter"}], "type": "wnd"}
        ]
element = rpa.ctrl_visitor34.add("控件名称", element_value)
rpa.win32.input_text("控件名称", "测试")


input_hotkeys

方法名

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


方法描述

输入快捷键


版本信息

该方法适用于从3.4.7及以上版本


参数说明


返回值说明


示例

element_value =  [
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "name", "pattern": "Equal", "value": "阿里云RPA Studio"}, {"name": "nth-child", "pattern": "Equal", "value": "3"}], "name": "Window", "props": [{"name": "title", "pattern": "Contain", "value": "阿里云RPA Studio"}, {"name": "id", "pattern": "Equal", "value": "ShadowMainForm"}, {"name": "app", "pattern": "Equal", "value": "AliRPA"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "panelBorder"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_panel_Container"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "DevelopView"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "4"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_panel_Right"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.8.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "1"}], "name": "Pane", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_elementsPanel"}], "type": "wnd"}, 
        {"optionProps": [{"name": "class", "pattern": "Equal", "value": "WindowsForms10.Window.b.app.0.1629f15_r9_ad1"}, {"name": "nth-child", "pattern": "Equal", "value": "4"}], "name": "Edit", "props": [{"name": "title", "pattern": "Equal", "value": ""}, {"name": "id", "pattern": "Equal", "value": "_btn_Filter"}], "type": "wnd"}
        ]
element = rpa.ctrl_visitor34.add("控件列表", element_value)

# 按一下左边的"WIN"键,按下并弹起
rpa.win32.input_hotkeys("控件名称", "VK_LWIN") 

# 按下“CTRL”键,没有弹起
rpa.win32.input_hotkeys("控件名称", "VK_CONTROLPRESS")

# 弹起“CTRL”键
rpa.win32.input_hotkeys("控件名称", "VK_CONTROLRELEASE")

# “CTRL” + “SHIFT” + “A”
rpa.win32.input_hotkeys("控件名称", "VK_CONTROL|VK_SHIFT|A")

# 输入小写的"a"
rpa.win32.input_hotkeys("控件名称", "A")

# 输入大写的"A"
rpa.win32.input_hotkeys("控件名称", "VK_SHIFTPRESS")
rpa.win32.input_hotkeys("控件名称", "A")
rpa.win32.input_hotkeys("控件名称", "VK_SHIFTRELEASE")


drive_input

方法名

drive_input(element, value, *, index=1, replace=True,parent_element=None, timeout=10)


方法描述

驱动输入,针对密码框进行操作

注:1.必须使用管理员权限启动RPA进行操作

2.建议键盘切换到英文选项,驱动输入在使用五笔或者拼音输入法的情况下操作SDK可能会出问题


版本信息

该方法适用于从3.4.5及以上版本


参数说明


返回值说明


示例

from rpa.core import *
from rpa.utils import *
import rpa3 as rpa # 使用V3引擎

def start():
    # 在此处开始编写您的应用
    page = rpa.ie.create('https://corp.bank.xxxxxx.com/cotb/login.html')
    page.input("用户名输入框","pwd")
    rpa.win32.drive_input("密码输入框","123Qwe!")


click

方法名

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


方法描述

点击


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

#左键点击
wnd.click("控件名称")
wnd.click("控件名称", button='left')
#右键点击
wnd.click("控件名称", button='right')
#偏移左键控件
wnd.click("控件名称", offsetX=1, offsetY=2)


double_click

方法名

double_click(self, element, *, offsetX=0, offsetY=0, index=1, parent_element=None, timeout=10)


方法描述

双击


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

#双击控件
wnd.double_click('控件名称')
#偏移双击控件
wnd.double_click('控件名称', offsetX=1, offsetY=2)


expand

方法名

expand(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

节点展开


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.expand('控件名称')



collapse

方法名

collapse(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

节点折叠


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.collapse('控件名称')


set_select_item_by_text

方法名

set_select_item_by_text(self, element, text: str, *, index=1, parent_element=None, timeout=10)


方法描述

combobox--根据内容下拉


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

#下拉包含"aa"
wnd.set_select_item_by_text('控件名称', 'aa')


set_select_item_by_index

方法名

set_select_item_by_index(self, element, item_index: int, *, index=1, parent_element=None, timeout=10)


方法描述

combobox--根据下标下拉


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

#下拉第一个选项
wnd.set_select_item_by_index('控件名称', 1)


get_select_items

方法名

get_select_items(self, element, mode='selected', *, index=1, parent_element=None, timeout=10)


方法描述

获取combobox的item


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回combobox的item


示例

#返回所有选项的集合
result = wnd.get_options('控件名称')  #简略的写法
result = wnd.get_options('控件名称', mode='all')
#返回选中的值的集合(因为有多选的情况,统一返回集合)
result = wnd.get_options('控件名称', mode='selected')


set_checked

方法名

set_checked(self, element, value: bool, *, index=1, parent_element=None, timeout=10)


方法描述

设置复选框状态


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

#取消勾选
wnd.set_checked('控件名称', False)
#设置勾选
wnd.set_checked('控件名称', True)


get_checked

方法名

get_checked(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取复选框状态


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

获取复选框是否被选中


示例

result = wnd.get_checked('控件名称')


get_selected

方法名

get_selected(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取选中状态


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

获取控件是否被选中


示例

result = wnd.get_selected('控件名称')


text

方法名

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


方法描述

获取文本


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

获取控件文本信息


示例

result = wnd.text('控件名称')


pos

方法名

pos(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取坐标


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

获取控件坐标


示例

result = wnd.pos('控件名称')


table

方法名

table(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取表格内容


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

获取控件表格列表


示例

result = wnd.table('控件名称')


set_scroll

方法名

set_scroll(self, element, percent, *, direction='top', index=1, parent_element=None, timeout=10)


方法描述

设置滚动条


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

#设置滚动百分之10
wnd.set_scroll('控件名称', 10)


get_scroll_width

方法名

get_scroll_width(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取横向滚动条宽度


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回横向滚动条宽度


示例

result = wnd.get_scroll_width('控件名称')


get_scroll_height

方法名

get_scroll_height(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

获取纵向滚动条高度


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回纵向滚动条高度


示例:

result = wnd.get_scroll_height('控件名称')


screenshot

方法名

screenshot(self, element, file, *, index=1, parent_element=None, timeout=10)


方法描述

控件截图


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.screenshot('控件名称', r'c:\work\aaa.jpg')



mouse_move

方法名

mouse_move(self, element, *, index=1, parent_element=None, timeout=10)


方法描述

鼠标移入


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明


示例

wnd.mouse_move('控件名称')


get_datetimepicker

方法名

get_datetimepicker(element, *, index=1, parent_element=None, timeout=10)


方法描述   

获取日期控件时间


版本信息

该方法适用于从3.4.2及以上版本


参数说明


返回值说明

返回日期控件时间


示例

rpa.win32.get_datetimepicker("控件")


set_datetimepicker

方法名

set_datetimepicker(element, *, year=1970, month=1, day=1, hour=0,minute=0, second=0, index=1, parent_element=None)


方法描述   

设置日期控件时间


版本信息

该方法适用于从3.4.2及以上版本。


参数说明


返回值说明


示例

rpa.win32.set_datetimepicker("控件",2019,2,12,12,11,60)


save_file_dialog

方法名

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


方法描述   

设置下载文件弹窗


版本信息

该方法适用于从3.4.2及以上版本。


参数说明


返回值说明


示例

rpa.win32.save_file_dialog(r'D:\',title='保存文件')


open_file_dialog

方法名

open_file_dialog(path)


方法描述   

设置上传文件弹窗


版本信息

该方法适用于从3.4.2及以上版本。


参数说明


返回值说明


示例

rpa.win32.open_file_dialog(r'D:\')


key_send

方法名

key_send(key)


方法描述   
      发送按键

使用autoit语法


版本信息

该方法适用于从3.4.2及以上版本。


参数说明


返回值说明


示例

rpa.win32.key_send('{ENTER}')  # 发送enter键
rpa.win32.key_send('^{A}')  # 发送ctrl+A键
rpa.win32.key_send('{F}')  # 发送F键


cursor_move

方法名

cursor_move(x, y)


方法描述   
      鼠标移动


版本信息

该方法适用于从3.4.2及以上版本。


参数说明


返回值说明


示例

rpa.win32.cursor_move(100,20)


capture

方法名

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


方法描述   

      屏幕截图


版本信息

该方法适用于从3.4.2及以上版本。


参数说明


返回值说明


示例


rpa.win32.capture('D:\pature.jpg',10,10,10,10)