【自动化流程设计】(1) - 使用RPA,不写代码也能自动登陆账号

一、提出问题

打开并登录艺赛旗社区需要那些步骤?如若我们要自动化登录又该怎么实现呢?

二、问题分析

如果使用代码来进行自动化化登陆的话,就我所知道的使用Python进行账号登录,大致分为这4个步骤:

  1. 获取网址,得到【URL】
  2. 输入账号密码,得到【data】
  3. 构建Request Headers,得到【headers】
  4. 登入

普通的用户肯定是不能理解的,因为他们已经习惯了界面操作,既方便又快捷,且可细致分为4个步骤:

  1. 打开网站:https://support.i-search.com.cn/
  2. 点击登录(直接打开登录页面的情况下这个步骤都可以省略掉)
  3. 输入账号密码
  4. 登录

但既然要实现自动化登录,我们是否能够通过某种方法,让电脑像人一样操作,自行完成这些步骤呢?
还真有,RPA便能通过模拟用户进行界面操作的行为,实现自动登录

三、解决问题

如下图所示,便是艺赛旗RPA模仿一般用户进行登录流程所制定的相应流程:
在这里插入图片描述

  1. 图示中的【打开浏览器】组件,便是选定指定的浏览器打开指定的网址,这里演示的是用IE浏览器打开艺赛旗RPA社区;
  2. 打开网站之后,便是文章第一张图所示的页面了,这时候只需要用鼠标点击登录就能跳转到登陆页面了,而接下来的【鼠标点击】组件便是让鼠标光标点击指定位置;
  3. 跳转到登陆页面后,就是输入账号和密码了,上图中所示的两个【设置文本】组件,即可实现在选定文本框内输入指定内容;
  4. 最后点击登录按钮进行登陆,同样使用【鼠标点击】组件进行实现。

四、优化

我们进行相关操作的时候,眼睛一直在接收信息让大脑进行处理,然后做出相应的回应。
例如,在打开网页的时候万一网络延迟,导致网页打开失败,这时我们看到页面空白,立刻就会进行刷新或关闭掉网页再重新打开;又如打开网页后我们发现网页已经记住了我其他的账号已经登录,这时候我们会将其他账号登出,然后再重新登陆账号。
这是我们经常会遇到的问题,所以在这样的自动化流程设计过程中,我们也是需要考虑容错机制的,进行容错处理后,大概的流程就是这样了:
在这里插入图片描述

  • 设置登录次数
    如上所述,在登录的过程中难免会遇到一些意外的情况发生,所以流程自动化运行出现错误情况的时候,我们希望既流程能够自行处理,重新自行登录,有希望登录一直出错的情况下又不能无限执行。
    所以设置自动登录的次数为3次,超过3次还没有登录成功,那肯定是有大问题的。
    这里直接使用【For循环】组件,设置整个登录的操作最多循环三次,三次之后还没登录成功,那么就提示用户需要检测当前的环境了。
    在这里插入图片描述

  • 网页是否打开成功
    刚才也提到过,可能网络延迟等一系列问题,会导致我们所需要的页面未能正常打开,那么我们可以通过一些小技巧来检验页面是否跳转。
    我们在使用艺赛旗RPA的过程中常用的检测方法是使用【获取文本】组件来获取页面跳转的情况下所特有的页面控件元素,如果能够获取到“登录”这个控件,那么就可以肯定正常打开了网页,这样就能进行下一步点击登录的操作了。

在这里插入图片描述

  • 登录检测
    如若没有获取到上面第2点中的“登录”控件,要么就是已经登录了,要么就是网页没有正常打开。
    首先进行检测是否已经登录了,登录后的页面状态如下所示:
    在这里插入图片描述

同样先使用【获取文本】组件来获取登录用户的用户名,这里也可以分为两种情况:
1)该用户名是我们所需要登录账号,那么我们可以判定登录成功,登录的操作自然也就可以结束,直接用【Return返回】组件,让流程返回True,表示登录成功;
2)该用户名不是我们所需要登录账号,那就模拟用户进行登出的操作,然后再进行下一次的登录操作。
其余情况就是网页没有正常打开了,直接关闭浏览器,再进行下一次的登录操作。
在这里插入图片描述

当然,在输入账号密码登录之后,也需要获取用户名来检测是否登陆成功:登录成功,返回True结束登录;登陆失败那么就检测是否是账号或密码错误,是则立即提示用户账号和密码输入有误,然后结束登录,否则就是其他问题,关闭浏览器再进行下一次的登录操作,直至登录成功,或者三次之后(还没登录成功)提示用户需要检测当前的环境。

在这里插入图片描述

免费下载试用:https://support.i-search.com.cn/

发布了64 篇原创文章 · 获赞 3 · 访问量 3014

猜你喜欢

转载自blog.csdn.net/weixin_45841201/article/details/103507764