开发者社区> 问答> 正文

如图,阿里云RPA这种验证码怎么弄?

阿里云RPA这种验证码怎么弄?我看好像要写py脚本
b18bb9af356dd823f0743c6cccf85018.png

展开
收起
乐天香橙派 2023-10-11 22:00:01 178 0
来自:阿里云RPA
3 条回答
写回答
取消 提交回答
  • 通过第三方打码平台实现验证码识别
    https://help.aliyun.com/document_detail/454664.html?spm=a2c4g.750001.0.i2

    本案例主要展示如何实现通过阿里云RPA工具调用第三方打码平台,解决验证码问题。

    案例一
    首先打开阿里云RPA控制台登录界面,然后通过连续输入几次账号密码错误让图像英文数字验证码显示出来

    8fe60d34e4b1243697971ca60390cba7_p499405.png

    使用捕捉控件捕获账号密码输入框、验证码输入框、图像验证码、登录按钮,以及控制台登录成功后的首页菜单控件。

    22abee10be8ae1876b449436a21c32ba_p499453.png

    编码模式下,代码示例如下:

    ```from rpa.core import
    from rpa.utils import

    import rpa4 as rpa # 使用V4引擎
    import requests
    from hashlib import md5

    您可调用任意第三方平台提供的验证码识别接口,本文以超级鹰平台的公开接口为例,下载接口脚本文件,将接口代码复制到下面代码后面即可,具体请见:https://www.chaojiying.com/api-14.html

    def start():

    # 验证码截图存放路径
    screenshot_path = r'C:\Users\用户\Desktop\验证码.png'
    page = rpa.app.chrome.catch('阿里云RPA', mode='title', pattern='contain', timeout=10)
    
    # 首次登录失败,可以最多循环执行10次
    for i in range(10):
        page.input_text('输入账号','123', simulate=True)
        page.input_text('输入密码','123', simulate=True)
        bool1 = page.wait_loaded('验证码截图', timeout=3)
        if bool1:
            # 验证码截图
            page.screenshot('验证码截图',screenshot_path)
            # 识别验证码
            dis_code = OCR_recognition(screenshot_path)
            # 输入验证码
            page.input_text('输入验证码',dis_code, simulate=True)
        page.click('点击登录')
        # 根据控制台首页的控件来判断是否已成功登录
        bool2 = page.wait_loaded('控制台首页', timeout=3)
        if bool2:
            break
    

    def OCR_recognition(screenshot_path):
    '''
    调用超级鹰OCR接口识别验证码
    '''
    captcha_user = '超级鹰用户名'
    captcha_pwd = '超级鹰用户名的密码'
    captcha_soft = '96001' # 用户中心>>软件ID 生成一个替换 96001
    captcha_cjy = Chaojiying_Client(captcha_user, captcha_pwd, captcha_soft)
    im = open(screenshot_path, 'rb').read()
    dis_result = captcha_cjy.PostPic(im, 1902) # 1902 验证码类型
    dis_code = dis_result['pic_str']
    print(dis_result)
    return dis_code

    ```

    2023-10-12 08:30:17
    赞同 展开评论 打赏
  • 北京阿里云ACE会长

    RPA 本身并没有提供专门的验证码识别组件,因此您需要使用第三方平台或自定义 Python 脚本来处理验证码。
    以下是一些建议:

    1. 使用第三方验证码识别平台:有许多在线的验证码识别服务,例如 Google 的 reCAPTCHA。您可以使用这些服务来识别验证码。请注意,这些服务通常需要您在网站上集成他们的 API。
    2. 自定义 Python 脚本:您可以使用 Python 的图像处理库(例如 PIL、OpenCV 等)来识别验证码。这需要您具备一定的 Python 编程能力,并且可能需要针对特定类型的验证码进行定制。
    3. 使用阿里云的人脸识别服务:阿里云提供的人脸识别服务可以用于处理某些类型的验证码,
    2023-10-12 07:28:08
    赞同 展开评论 打赏
  • 是的—此回答来自钉群“阿里云RPA官方群4”

    2023-10-11 22:05:46
    赞同 展开评论 打赏
来源圈子
更多
收录在圈子:
+ 订阅
阿里云RPA历经8年的内部验证,覆盖了阿里巴巴大部分BU,实现了电商客服、新零售等新兴行业的渗透,并且已经完成在保险、金融、医疗保健等领域的场景深耕,联合合作伙伴具备深度定制化能力和稳定交付能力,积累了丰富的行业可行性解决方案。目前阿里云RPA能集成并运行在更高的软件层级,这就决定了它不会侵入、影响已有的软件系统。在帮助企业提升效能的过程中,保持企业已有的IT系统功能平稳、运行可靠。
问答排行榜
最热
最新

相关电子书

更多
毕马威-阿里云RPA联合方案力助保险业转型 立即下载
《阿里云RPA-引领电商智能提效时代》 立即下载
《阿里云RPA产品介绍4.0》 立即下载