# coding=utf-8 # 编译日期:2026-08-12 11:59:19 # 版权所有:www.i-search.com.cn import ubpa.init_input as iinput from ubpa.base_util import StdOutHook, ExceptionHandler import time import pdb from ubpa.ilog import ILog import getopt from sys import argv import sys import os import datetime as is_datetime import pandas from ubpa.base_img import * import ubpa.iplatform as iplatform class AutoRpa: def __init__(self,**kwargs): self.__logger = ILog(__file__) self.path = set_img_res_path(__file__) self.robot_no = '' self.proc_no = '' self.job_no = '' self.input_arg = '' if('robot_no' in kwargs.keys()): self.robot_no = kwargs['robot_no'] if('proc_no' in kwargs.keys()): self.proc_no = kwargs['proc_no'] if('job_no' in kwargs.keys()): self.job_no = kwargs['job_no'] ILog.JOB_NO, ILog.OLD_STDOUT = self.job_no, sys.stdout sys.stdout = StdOutHook(self.job_no, sys.stdout) ExceptionHandler.JOB_NO, ExceptionHandler.OLD_STDERR = self.job_no, sys.stderr sys.excepthook = ExceptionHandler.handle_exception if('input_arg' in kwargs.keys()): self.input_arg = kwargs['input_arg'] if(len(self.input_arg) <= 0): self.input_arg = iinput.load_init(__file__) if self.input_arg is None: sys.exit(0) def Main(self): #插入代码块#1 self.__logger.dlogs(job_no=self.job_no,logmsg='Flow:Main,StepNodeTag:20260812200000,Title:插入代码块#1,Note:合同建单完整流程 - Edge浏览器自动化') if __name__ == '__main__': ILog.begin_init() robot_no = '' proc_no = '' job_no = '' input_arg = '' params = {} fn = "Main" flow_params={'Main':[]} try: argv = sys.argv[1:] opts, args = getopt.getopt(argv,"hr:p:j:i:c:",["robot = ","proc = ","job = ","input = ","params = "]) except getopt.GetoptError: print ('robot.py -r -p -j ') for opt, arg in opts: if opt == '-h': print ('robot.py -r -p -j ') elif opt in ("-r", "--robot"): robot_no = arg elif opt in ("-p", "--proc"): proc_no = arg elif opt in ("-j", "--job"): job_no = arg elif opt in ("-i", "--input"): input_arg = arg elif opt in ("-c", "--params"): cParam: dict = iinput.parseConnectorParam(arg) params = cParam.pop("Params", params) fn = cParam.pop("FlowName", fn) pro = AutoRpa(robot_no=robot_no,proc_no=proc_no,job_no=job_no,input_arg=input_arg) iplatform.Return(MainResult=getattr(pro, fn)(**params), job_no=job_no, fn=fn, flow_return_params=flow_params.get(fn,[]))