CV录制-自动化流程开发示例

1. 示例流程说明

通过CV录制,开发一个自动操作钉钉软件打开指定会话,并发送消息的流程。包括以下三个部分:

  • CV控件捕捉使用流程

  • 钉钉控件捕捉示例

  • 钉钉自动化操作流程编写

2. CV控件捕捉使用流程

控件是自动化流程操作的基本元素单位,可通过以下步骤捕捉一个目标控件:

  1. 点击开始捕捉

    image.png

  2. 在录制模式中选择"CV录制模式"后,点击捕捉控件image.png

  3. 在钉钉界面中使用鼠标拖动,框选需要自动化操作的控件元素,例如image.png

  4. 捕捉完成后,可以对控件的一些属性进行编辑,可以拖动定位图像中的锚点位置,从而改变自动化操作的实际操作位置image.png

  5. 输入控件名称后点击保存,即可在控件列表中看到已捕获元素的对象image.png

3. 钉钉控件捕捉示例

在发送消息的自动化流程中,需要捕捉以下几个控件

  1. 消息按钮,保证界面切换到消息界面image.png

  2. 搜索框,用于搜索联系人,在匹配按钮后将锚点拖入搜索框中,防止搜索框中有内容干扰识别image.png

  3. 联系人,用于识别搜索结果是否已经加载出来image.png

  4. 消息输入框,用于定位输入文本的位置,同样框选表情按钮后将锚点拖入文本输入框image.png

  5. 发送按钮,用于发送消息image.png

3. 自动化流程开发示例

3.1. 可视化工程

  1. 利用获取窗口组件,获取钉钉的窗口对象v_win_obj_1,传给激活窗口组件的已打开的窗口对象参数中

  2. 利用激活窗口组件,激活钉钉窗口在界面最上方

  3. 利用点击控件(CV)组件,点击消息按钮,确保界面切换到消息界面

    • image

  4. 利用填写输入框(CV)组件,在搜索框中输入搜索的用户

    • image

  5. 利用等待元素出现(CV)组件,等待搜索的联系人出现

    • image

  6. 利用输入热键组件,输入热键简码清单中回车的热键码{ENTER},实现模拟键盘回车

  7. 利用填写输入框(CV)组件,在联系人会话的消息输入框中填写指定消息内容

    • image

  8. 利用点击控件(CV)组件,点击“发送”按钮,发送消息

    • image

image

3.2. 编码模式

from rpa.core import *
from rpa.utils import *
import rpa4 as rpa # 使用V4引擎
# 简化前缀
import rpa4.ai.cv as cv

def start():
    # 流程开始时,激活主窗口
    dingding_mainwindow = rpa.ui.win32.catch('钉钉')
    dingding_mainwindow.activate()
    # 点击消息按钮,切换到会话界面
    cv.element.click('消息')
    # 在搜索框中输入搜索的用户
    cv.element.input_text('搜索框', 'Helen')
    # 确保搜索结果加载
    cv.element.wait_loaded('联系人')
    # 输入回车,进入第一个匹配的结果会话
    rpa.ui.win32.send_key('{ENTER}')
    # 在文本输入框中输入要发送的内容
    cv.element.input_text('消息输入框', '这是一条测试消息')
    # 点击发送按钮,发送消息
    cv.element.click('发送按钮')