Пример #1
0
        /// <summary>
        ///     The net file ocr.
        /// </summary>
        private static void NetFileOcr()
        {
            // 默认请求提交url为 http://lab.ocrking.com/ok.html
            // 后台不定时增加或减少apiUrl,当您使用的apiUrl无法正常请求时
            // 请通过 http://api.ocrking.com/server.html 获取
            // 使用其它请求apiUrl可以这样初始化
            // var ocrKing = new OcrKing(ApiKey, "http://www.ocrking.com/")
            var ocrKing = new OcrKing(ApiKey)
                              {
                                  Language = Language.Eng,
                                  Service = Service.OcrKingForCaptcha,
                                  Charset = Charset.DigitLowerUpper,
                                  FileUrl =
                                      "https://www.bestpay.com.cn/api/captcha/getCode?1408294248050"
                              };

            // 网络文件识别时FileUrl传图片url  此时type可以省略
            // 服务端根据url进行匹配
            ocrKing.DoService();

            // 识别请求状态及结果
            // 检查是不是请求成功
            if (ocrKing.ProcessStatus)
            {
                Console.WriteLine(ocrKing.OcrResult);
            }
            else
            {
                Console.WriteLine("有错误发生, {0}", ocrKing.OcrResult);
            }
        }
Пример #2
0
        public int GetNumber(int x, int y, int width, int height, string url)
        {
            var ocrKing = new OcrKing(ApiKey)
            {
                //Language = Language.Eng,
                //Service = Service.OcrKingForCaptcha,
                //Charset = Charset.DigitLowerUpper

                Language = Language.Eng,
                Service = Service.OcrKingForCaptcha,
                Charset = Charset.DigitLower
            };

            Bitmap btm = captureScreen(x, y, width, height);
            btm.Save(url, ImageFormat.Jpeg);
            ocrKing.Type = "http://www.nopreprocess.com";
            ocrKing.FilePath = url;
            ocrKing.DoService();
            string number = this.ParseResult(ocrKing.OcrResult, ocrKing.ProcessStatus);
            if (number != "")
                return Convert.ToInt32(number);

            return 0;
        }
        /// <summary>
        /// OrcKing识别验证码
        /// </summary>
        /// <param name="url"></param>
        /// <returns></returns>
        public string OrcKing(string fileurl,string url)
        {
            // 默认请求提交url为 http://lab.ocrking.com/ok.html
            // 后台不定时增加或减少apiUrl,当您使用的apiUrl无法正常请求时
            // 请通过 http://api.ocrking.com/server.html 获取
            // 使用其它请求apiUrl可以这样初始化
            // var ocrKing = new OcrKing(ApiKey, "http://www.ocrking.com/")
            var ocrKing = new OcrKing(ApiKey)
            {
                Language = AvensLab.Service.Models.Language.Eng,
                Service = AvensLab.Service.Models.Service.OcrKingForCaptcha,
                Charset = AvensLab.Service.Models.Charset.DigitLowerUpper,
                FilePath = fileurl,
                Type = url
            };

            // 网络文件识别时FileUrl传图片url  此时type可以省略
            // 服务端根据url进行匹配
            ocrKing.DoService();

            // 识别请求状态及结果
            // 检查是不是请求成功
            if (ocrKing.ProcessStatus)
            {
                // 解析结果
                XmlDocument doc = new XmlDocument();
                doc.LoadXml(ocrKing.OcrResult);

                // 识别结果
                return doc.SelectSingleNode("//Results/ResultList/Item/Result").InnerText;

            }
            else
            {
                return "识别失败";
            }
        }
Пример #4
0
        /// <summary>
        ///     The upload file ocr.
        /// </summary>
        private static void UploadFileOcr()
        {
            // 默认请求提交url为 http://lab.ocrking.com/ok.html
            // 后台不定时增加或减少apiUrl,当您使用的apiUrl无法正常请求时
            // 请通过 http://api.ocrking.com/server.html 获取
            // 使用其它请求apiUrl可以这样初始化
            // var ocrKing = new OcrKing(ApiKey, "http://www.ocrking.com/")
            var ocrKing = new OcrKing(ApiKey)
                              {
                                  Language = Language.Eng,
                                  Service = Service.OcrKingForCaptcha,
                                  Charset = Charset.DigitLowerUpper
                              };

            // 设置要上传的图片路径, 必须是绝对路径 如 c:\test.png
            ocrKing.FilePath = Environment.CurrentDirectory + "\\test.png";

            // 上传识别时url可以省略 但此时请传原始验证码的地址到type
            // 方便服务端进行优化匹配  不然结果可能完全不同
            // 如果传递原始url到type 结果是 ckkq 正确的,
            ocrKing.Type = "https://www.bestpay.com.cn/api/captcha/getCode?1408294248050";

            // 如果不传递原始url到type或乱传一个地址到type 结果很可能就是错的
            // ocrKing.Type = "http://www.e-fa.cn/extend/image.php?auth=EXcQdVFjIkcOPxd1DW4wAF5iNAUJPQ";
            // 如果想禁止后台做任何预处理  type可以设为 http://www.nopreprocess.com
            // 如果确实不确定验证码图片的原url  type可以设为 http://www.unknown.com  此时后台只进行常用预处理
            ocrKing.DoService();

            // 识别请求状态及结果
            // 检查是不是请求成功
            if (ocrKing.ProcessStatus)
            {
                Console.WriteLine(ocrKing.OcrResult);
            }
            else
            {
                Console.WriteLine("有错误发生, {0}", ocrKing.OcrResult);
            }
        }
Пример #5
0
        public string GetSubString(int x, int y, int width, int height, string url)
        {
            var ocrKing = new OcrKing(ApiKey)
            {
                //Language = Language.Eng,
                //Service = Service.OcrKingForCaptcha,
                //Charset = Charset.DigitLowerUpper

                Language = Language.Sim,
                Service = Service.OcrKingForCaptcha,
                Charset = Charset.CommonWords
            };
            Bitmap btm = captureScreen(x, y, width, height);
            btm.Save(url, ImageFormat.Jpeg);
            ocrKing.Type = "http://www.nopreprocess.com";
            ocrKing.FilePath = url;
            ocrKing.DoService();
            string resault = this.ParseResult(ocrKing.OcrResult, ocrKing.ProcessStatus);
            return resault;
        }
Пример #6
0
        /// <summary>
        /// The bt net file_ click.
        /// </summary>
        /// <param name="sender">
        /// The sender.
        /// </param>
        /// <param name="e">
        /// The e.
        /// </param>
        private void btNetFile_Click(object sender, EventArgs e)
        {
            // 默认请求提交url为 http://lab.ocrking.com/ok.html
            // 后台不定时增加或减少apiUrl,当您使用的apiUrl无法正常请求时
            // 请通过 http://api.ocrking.com/server.html 获取
            // 使用其它请求apiUrl可以这样初始化
            // var ocrKing = new OcrKing(ApiKey, "http://www.ocrking.com/")
            var ocrKing = new OcrKing(ApiKey)
                              {
                                  Language = Language.Eng,
                                  Service = Service.OcrKingForCaptcha,
                                  Charset = Charset.DigitLowerUpper,
                                  FileUrl = this.tbNetFile.Text.Trim()
                              };

            // 网络文件识别时FileUrl传图片url  此时type可以省略
            // 服务端根据url进行匹配
            ocrKing.DoService();

            this.ParseResult(ocrKing.OcrResult, ocrKing.ProcessStatus);
        }
Пример #7
0
        /// <summary>
        /// The bt local file_ click.
        /// </summary>
        /// <param name="sender">
        /// The sender.
        /// </param>
        /// <param name="e">
        /// The e.
        /// </param>
        private void btLocalFile_Click(object sender, EventArgs e)
        {
            var newDialog = new OpenFileDialog { Title = "请选择验证码图片", InitialDirectory = BaseDir };

            // 默认请求提交url为 http://lab.ocrking.com/ok.html
            // 后台不定时增加或减少apiUrl,当您使用的apiUrl无法正常请求时
            // 请通过 http://api.ocrking.com/server.html 获取
            // 使用其它请求apiUrl可以这样初始化
            // var ocrKing = new OcrKing(ApiKey, "http://www.ocrking.com/")
            var ocrKing = new OcrKing(ApiKey)
                              {
                                  Language = Language.Eng,
                                  Service = Service.OcrKingForCaptcha,
                                  Charset = Charset.DigitLowerUpper
                              };

            if (newDialog.ShowDialog() == DialogResult.OK)
            {
                // 设置要上传的图片路径, 必须是绝对路径 如 c:\test.png
                ocrKing.FilePath = newDialog.FileName;
                this.tbLocalFile.Text = newDialog.FileName;
            }

            // 上传识别时url可以省略 但此时请传原始验证码的地址到type
            // 方便服务端进行优化匹配  不然结果可能完全不同
            // 如果传递原始url到type 结果是 ckkq 正确的,
            ocrKing.Type = "https://www.bestpay.com.cn/api/captcha/getCode?1408294248050";

            // 如果不传递原始url到type或乱传一个地址到type 结果很可能就是错的
            // ocrKing.Type = "http://www.e-fa.cn/extend/image.php?auth=EXcQdVFjIkcOPxd1DW4wAF5iNAUJPQ";
            // 如果想禁止后台做任何预处理  type可以设为 http://www.nopreprocess.com
            // 如果确实不确定验证码图片的原url  type可以设为 http://www.unknown.com 此时后台只进行常用预处理
            ocrKing.DoService();

            this.ParseResult(ocrKing.OcrResult, ocrKing.ProcessStatus);
        }