예제 #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
        /// <summary>
        /// The net file ocr.
        /// </summary>
        private static void NetFileOcr()
        {
            var ocrKing = new OcrKing(ApiKey);

            // 网络文件识别时ImageUrl传图片url  此时type可以省略
            // 服务端根据url进行匹配
            ocrKing.Language = Language.Eng;
            ocrKing.Service  = Service.OcrKingForPhoneNumber;
            ocrKing.Charset  = Charset.PHONENUMBER;
            ocrKing.ImageUrl = "http://t.51chuli.com/contact/d827323fa035a7729w060771msa9211z.gif";
            ocrKing.DoService();
            Console.WriteLine(ocrKing.OcrResult);
        }
예제 #3
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 正确的,
            //此demo中type值只针对此demo中的图片,其它网站图片请不要用此值
            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);
            }
        }
예제 #4
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);
        }
예제 #5
0
        /// <summary>
        /// The upload file ocr.
        /// </summary>
        private static void UploadFileOcr()
        {
            var ocrKing = new OcrKing(ApiKey);

            // 上传识别时url可以省略 但此时请传原始验证码的地址到type
            // 方便服务端进行优化匹配  不然结果可能完全不同
            ocrKing.Language = Language.Eng;
            ocrKing.Service  = Service.OcrKingForCaptcha;
            ocrKing.Charset  = Charset.DIGIT_LOWER_UPPER;
            // 设置要上传的图片路径, 必须是绝对路径 如 c:\test.png
            ocrKing.ImagePath = Environment.CurrentDirectory + "\\test.png";

            // 如果传递原始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";

            ocrKing.DoService();
            Console.WriteLine(ocrKing.OcrResult);
        }
예제 #6
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);
        }
        /// <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("识别失败");
            }
        }