hensky 发表于 2015-9-18 13:13:55

关于使用OCR来帮助LR实现认证码识别的问题

根据云层大大的代码,我在LR中运行无法识别验证码,代码如下:
Action()
{
    int flen;      //定义一个整型变量保存获得文件的大小
    long filedes;    //保存文件句柄
    char file[256]="d:\\test2.jpg";//保存文件路径及文件名
    char result[4];

    web_set_max_html_param_len("2000000");//设置页面接收最大的字节数,该设置应大于下载文件的大小
    web_reg_save_param("pic",
                   "LB=",
                   "RB=",
                   "Ord=1",
                   "Search=Body",
                   LAST);
   web_url("randpiccloud","URL=http://comment8.mydrivers.com/radompage.aspx?0.{rnum}",LAST);
    flen = web_get_int_property(HTTP_INFO_DOWNLOAD_SIZE); //获得文件大小
    if(flen > 0)
    {
      if((filedes = fopen(file, "wb")) == NULL)
      {
            lr_output_message("oh cloud your Open File Failed!==========================");
            return -1;
      }
      fwrite( lr_eval_string("{pic}"),flen,1,filedes );
      fclose( filedes );
    }
         system("d:\test.bat");
         if((filedes = fopen("d:\\test.txt", "rt")) == NULL)
      {
            lr_output_message("oh,cloud your Open File Failed!+++++++++++++++++++++++++");
            return -1;
      }
      fread( result,4,1,filedes);
      fclose( filedes );
         lr_output_message(result);
         return 0;
}
以上代码我执行,无法在d盘生成test.txt文件

但我单独执行test.bat文件,可以在test.txt文件中生成图片中的内容。
test.bat 文件代码如下:
tesseract.exe d:\test2.jpg d:\test -1   可以生成图片对应的文字内容

tesseract.exe d:\test2222.jpg d:\test -1无法生成图片对应的文字内容

我附上了可以识别的图片和无法识别的图片



hensky 发表于 2015-9-22 17:40:10

自己顶一下,寻求大大帮忙解答此问题

xuhuan007 发表于 2015-11-23 15:19:26

:)

seagull1985 发表于 2015-11-24 10:29:37

不太建议楼主用OCR的方式去识别做性能测试,直接绕过最好,两种方式,屏蔽验证码或是固定验证码。。。。
页: [1]
查看完整版本: 关于使用OCR来帮助LR实现认证码识别的问题