跳到主要内容

缩进流程

指令说明

让流程缩进。可以是任意支持缩进的Python代码,例如tryexceptwithforwhileif

指令输入参数

输入参数输入参数类型说明
代码Python语句例如try:、except、with、for、if等支持缩进的代码

指令输出参数

示例

  • 捕获自定义异常

    [
    {
    "ins": "缩进流程",
    "in": "try:",
    "children": [
    {
    "ins": "打开网页",
    "in": {
    "浏览器类型": "'Google Chrome'",
    "url": "'qyrpa.com'",
    "等待加载完成": "30"
    },
    "out": {
    "网页对象": "web_page"
    }
    },
    {
    "ins": "点击网页元素",
    "in": {
    "网页对象": "web_page",
    "网页元素": "'f65c8477-c610-4973-9cef-8d5463631c1a'",
    "点击类型": "'CDP静默点击'"
    }
    }
    ]
    },
    {
    "ins": "缩进流程",
    "in": "except OutOfTimeException as e:",
    "children": [
    {
    "ins": "输出日志",
    "in": {
    "日志内容": "f'超时异常:{e}'",
    "渲染HTML": "False"
    }
    }
    ]
    },
    {
    "ins": "缩进流程",
    "in": "except Exception as e:",
    "children": [
    {
    "ins": "输出日志",
    "in": {
    "日志内容": "f'其他:{e}'",
    "渲染HTML": "False"
    }
    }
    ]
    }
    ]

    生成的Python代码

    try:
    web_page = open_web_page('qyrpa.com', "Google Chrome", '30', None)
    click_web_element(web_page, ElementDescriptor('f65c8477-c610-4973-9cef-8d5463631c1a', "下载"), {"clickOption":"CDP静默点击"})
    except OutOfTimeException as e:
    print_to_app(f'超时异常:{e}', {"renderHtml":False})
    except Exception as e:
    print_to_app(f'其他异常:{e}', {"renderHtml":False})
  • with lock,并行变串行 生成的Python代码

    mylock = check_and_convert_vars(threading.RLock(), "任意类型")
    def ____parallel_execute2(____rpa_gen_itr_loop_index, item):
    with mylock:
    print_to_app(f"并行执行:{item}", {"renderHtml":False})
    pause_sec(3)
    print_to_app(f"执行完成:{item}", {"renderHtml":False})
    parallel_loop(['a','b','c'], False, ____parallel_execute2)
  • with读文件

    [
    {
    "ins": "缩进流程",
    "in": "with open('hello.txt') as f:",
    "children": [
    {
    "ins": "插入Python代码",
    "in": {
    "Python代码": "result = f.read()"
    }
    },
    {
    "ins": "输出日志",
    "in": {
    "日志内容": "result",
    "渲染HTML": "False"
    }
    }
    ]
    }
    ]

    生成的Python代码

    with open("hello.txt") as f:
    result = f.read()
    print_to_app(result, {"renderHtml":False})
  • 除了可以使用次数循环指令外还可以通过缩进流程

    [
    {
    "ins": "缩进流程",
    "in": "for i in range(3):",
    "children": [
    {
    "ins": "输出日志",
    "in": {
    "日志内容": "i",
    "渲染HTML": "False"
    }
    }
    ]
    }
    ]

    生成的Python代码

    for i in range(3):
    print_to_app(i, {"renderHtml":False})