
不知道题主是想因为工作需要还是出于自己的兴趣而想学习UiPath。如果是出于自己的兴趣而学习,建议还是学学Python之类的比较好。如果是出于工作需求,那就继续看下去吧。
UiPath标榜的是让编程人员能在无编程基础的情况下做编程。这样的好处是让有自动化需求而无专业编程人员的企业可以组织到员工学习使用。看上去学习成本很低,不需要记得各种语法,只需要学会按照流程把各个功能框连接起来,就可以操纵鼠标键盘和各种程序。功能框的功能必须细分到每一个鼠标单击的动作和键盘按下什么键。就像你在教导一个什么都不会的机器人,去像人一样操作电脑。如果觉得不知道怎么下手开始编UiPath,它还有录制的功能,把你的动作都录制下来,然后自动生成流程。这个录制功能就像Excel的录制宏。看上去一切都很完美。
但是!你以为用UiPath不需要编程的知识就大错特错了!UiPath本质上就是还是编程,哪里需要循环哪里需要判断一个都不能少,而且如果编制的时候逻辑不清,流程线乱拉,UiPath随时给你卡死,还不知道report回来。还有,各种变量的类型也是编制者的噩梦,变量的类型可以细分到一个长长的列表,而不单单是string之流。
好吧,先不吐槽。其实回答这个问题我更多的是想吐槽这个工具,因为我在用着……
下面是一些使用UiPath的建议,谈不上什么教程。
第一,建议有一定编程基础的人员去学UiPath。
第二,不要把一个项目定得太大,UiPath不稳定,跑的时间越长,卡死的机率越高。
第三,定义变量时,变量名称要清晰,变量类型要准确,变量作用范围要选好。
第四,流程图最好不要摊大饼式地铺开,最好用sequence和workflow组合一系列的动作。workflow之下还能再有workflow的。
第五,能click element就不要click image。
第六,常用write line检测变量
大概就是这些,想到什么就说什么,乱糟糟的。我猜题主是刚接触UiPath吧?以上只是我在使用UiPath时的一些感想,我认为最重要还是要自己亲手做项目,这样才是最高效的学习方法。然后你就会是这个表情了(´・_・`)
============分割线=====================
三个月后的一点小更新,希望对阅读本答案的人有一些帮助。
对于第五的修改更正:Click image其实也是要认element的,所以有时候click element和click image可以用在同一个地方。click image实用经验:在工作中我遇到过某些银行网站对于web element的标签做了特殊处理。每次刷新网站,对于同一个按钮,UiPath都认到不同的element。这个时候用click image,同时在selector中把特殊处理字段用*号代替,就能绕开这个特殊处理。
对于第六的额外建议:请不要不要write line太多在output bar,UiPath会卡死的。如果实在需要输出大量文本数据检查,可以用write txt file,生成一个txt文件进行检查。也可以生成一个data table写到Excel里面。
UiPath不稳定,用过的人都会吐槽。我认为原因有以下几个。
第一个原因是如果编写的时候考虑到多种情况时,整个流程会因此增大好多,臃肿不堪的话,UiPath在try catch的过程中会浪费大量时间,而效率在工作中也是很重要的。因此鉴于效率的问题,编程人员不把小几率的事件写上去,因而在遇上小概率事件时会出错。
第二个原因是,本身UiPath这款软件的平台也不甚完善,我们会发现很多不能理解的bug(可能是在下能力有限)。所以只能绕过这个功能,选用其他备用方案。
第三个原因是,运行环境杂乱。如果在运行UiPath的机子会有各种弹窗,各种提醒的话。那么UiPath在识别element的时候会被这些不经意的弹窗所打断。所以最好有一台特定的干净的机子来跑UiPath的机器人。
第四个原因是,开发中对于开发项目的工作流程理解不透。我觉得这个是最大的原因。之所以要开发机器人代替人手,是因为这些人手重复工作让机器人代替会更加有效率,使人力成本降低。但是这不意味着这些人手工作就不繁复的。重复不代表不繁复(拗口)。在理解项目时,必须仔细地看清楚人手操作的动作,认真地理顺人手操作背后的工作逻辑,大胆地提出新的工作逻辑,耐心地与相关工作人员了解情况和互动。这样子写出来的机器人,稳定性肯定提高不少。
目前工作中总结到的原因有以上四个。但是多思考第四个原因,可以让你少了很多维护的烦恼~
谢谢阅读:)
持续更新中。。。。
