51Testing软件测试论坛

 找回密码
 (注-册)加入51Testing

QQ登录

只需一步,快速开始

微信登录,快人一步

手机号码,快捷登录

查看: 138725|回复: 525
打印 上一主题 下一主题

[原创] 使用OCR来帮助LR实现认证码识别 By 云层

[复制链接]

该用户从未签到

跳转到指定楼层
1#
发表于 2012-3-1 16:40:14 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
本帖最后由 云层 于 2012-3-1 16:43 编辑

今天看到一个关于使用AUTOIT调用OCR的帖子,于是就又照猫画虎的转成LR专用了。原帖地址:http://www.51testing.com/index.php?uid-194902-action-viewspace-itemid-808450

原理很简单,用一个请求去刷新认证码返回页面,然后通过关联将返回的图片保存为硬盘的一个文件,然后用ocr去识别这个文件内容,保存结果到txt,最后用LR读这个文本就可以得到认证码。

当然很多时候识别不出来所以你要判断一下得出的结果是不是4位字符或数字,如果不是继续刷新,从请求角度来说应该效率很理想了。


这个写法可能来不及补在《性能测试进阶指南 Loadrunner11实践》书里面了,大家自己懂的。

注:参数Num是一个随机数,目的是为了告诉js现在这个变了请刷新,所以是一个类似于时间戳的东西!

游客,如果您要查看本帖隐藏内容请回复



  1. Action()
  2. {
  3.     int flen;        //定义一个整型变量保存获得文件的大小
  4.     long filedes;    //保存文件句柄
  5.     char file[256]="c:\\test1.jpg";  //保存文件路径及文件名
  6.          char result[4];

  7.     web_set_max_html_param_len("2000000");//设置页面接收最大的字节数,该设置应大于下载文件的大小

  8.          web_reg_save_param("pic",
  9.                    "LB=",
  10.                    "RB=",
  11.                    "Ord=1",
  12.                    "Search=Body",
  13.                    LAST);

  14.          web_url("randpiccloud","URL=http://comment8.mydrivers.com/radompage.aspx?0.{rnum}",LAST);

  15.    
  16.     flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE); //获得文件大小
  17.     if(flen > 0)
  18.     {
  19.         if((filedes = fopen(file, "wb")) == NULL)
  20.         {
  21.             lr_output_message("oh cloud your Open File Failed!");
  22.             return -1;
  23.         }
  24.         fwrite( lr_eval_string("{pic}"),flen,1,filedes );
  25.         fclose( filedes );
  26.     }

  27.          system("c:\test.bat");

  28.          if((filedes = fopen("c:\\test.txt", "rt")) == NULL)
  29.         {
  30.             lr_output_message("oh,cloud your Open File Failed!");
  31.             return -1;
  32.         }
  33.         fread( result,4,1,filedes);
  34.         fclose( filedes );

  35.          lr_output_message(result);

  36.          return 0;
  37. }

复制代码

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?(注-册)加入51Testing

x
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏9
回复

使用道具 举报

该用户从未签到

2#
发表于 2012-3-1 17:09:33 | 只看该作者
做个记号慢慢看~~~~~~~~谢谢云老大
回复 支持 反对

使用道具 举报

该用户从未签到

3#
发表于 2012-3-1 17:12:23 | 只看该作者
好的 学习了
回复 支持 反对

使用道具 举报

该用户从未签到

4#
发表于 2012-3-1 17:20:05 | 只看该作者
收藏了,支持一下!
回复 支持 反对

使用道具 举报

该用户从未签到

5#
发表于 2012-3-1 17:24:26 | 只看该作者
先标记一下吧, 暂时没有这方面 的需要。
回复 支持 反对

使用道具 举报

该用户从未签到

6#
发表于 2012-3-1 17:39:27 | 只看该作者
回帖,看一下隐藏内容……学习了!
回复 支持 反对

使用道具 举报

该用户从未签到

7#
发表于 2012-3-1 17:55:23 | 只看该作者
做个标记
回复 支持 反对

使用道具 举报

该用户从未签到

8#
发表于 2012-3-1 19:11:51 | 只看该作者
标记
回复 支持 反对

使用道具 举报

该用户从未签到

9#
发表于 2012-3-1 22:56:53 | 只看该作者
标记
回复 支持 反对

使用道具 举报

  • TA的每日心情
    无聊
    2018-9-27 10:05
  • 签到天数: 36 天

    连续签到: 1 天

    [LV.5]测试团长

    10#
    发表于 2012-3-2 09:04:32 | 只看该作者
    支持~~~~
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    11#
    发表于 2012-3-2 09:19:29 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    12#
    发表于 2012-3-2 10:23:35 | 只看该作者
    简单的字符和数字和验证码现在已经很少见了
    我们这里用的都是“X+X=?”这样的算术形式
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    13#
    发表于 2012-3-2 10:24:49 | 只看该作者
    谢谢分享!
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    开心
    2014-10-16 09:54
  • 签到天数: 1 天

    连续签到: 1 天

    [LV.1]测试小兵

    14#
    发表于 2012-3-2 10:49:22 | 只看该作者
    学习学习
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    15#
     楼主| 发表于 2012-3-2 12:08:03 | 只看该作者
    算数是文本,其实更好做!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    16#
    发表于 2012-3-2 15:30:18 | 只看该作者
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    17#
    发表于 2012-3-2 20:14:13 | 只看该作者
    学习!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    18#
    发表于 2012-3-2 20:14:19 | 只看该作者
    学习!
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    19#
    发表于 2012-3-3 23:26:18 | 只看该作者
    老师。。。驱家的那个验证码真能ocr出来?
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    20#
    发表于 2012-3-4 13:08:01 | 只看该作者
    学习下
    回复 支持 反对

    使用道具 举报

    本版积分规则

    关闭

    站长推荐上一条 /1 下一条

    小黑屋|手机版|Archiver|51Testing软件测试网 ( 沪ICP备05003035号 关于我们

    GMT+8, 2024-11-24 16:06 , Processed in 0.088836 second(s), 28 queries .

    Powered by Discuz! X3.2

    © 2001-2024 Comsenz Inc.

    快速回复 返回顶部 返回列表