Example #1
0
        /// <summary>
        /// 登录
        /// </summary>
        private void Login()
        {
            ////登录页
            //_httpHelper.SyncRequest("http://*****:*****@"./tessdata", "eng", EngineMode.Default))
            //{
            //    using (var entity = engine.Process(uncode.bmpobj))
            //    {
            //        _checkCode = entity.GetText();
            //    }
            //}
            //_checkCode = _checkCode.Trim();
            //image.Save("D:\\" + InputText(_checkCode, _checkCode.Length) + "_Code.jpg");
            ////登录验证
            //_httpHelper.PostData = string.Format("Email={0}&Password={1}&VCode={2}",
            //    _userName, _password, _checkCode);
            //_httpHelper.SyncRequest("http://*****:*****@"./tessdata", "eng", EngineMode.Default))
            //{
            //    using (var entity = engine.Process(uncode.bmpobj))
            //    {
            //        _checkCode = entity.GetText();
            //    }
            //}

            //System.Drawing.Image image = (Image)uncode.bmpobj;
            //image.Save("D:\\" + InputText(_checkCode, _checkCode.Length) + "_Code.jpg");

            //_checkCode = _checkCode.Trim();
            //_checkCode = _checkCode.Replace(" ", "");//这样替换下就可以了

            ////登录验证
            //_httpHelper.PostData = string.Format("username={0}&password={1}&captcha={2}",
            //    _userName, _password, _checkCode);
            //_httpHelper.SyncRequest("https://eastmoney-office.eastmoney.com/bd-cas/login");


            //#########################################################################//



            //登录页
            _httpHelper.SyncRequest(" http://wp18011601.eda8888.com/App/Login");

            //获取验证码图片
            var bitmap = _httpHelper.GetCheckCode("http://wp18011601.eda8888.com/App/Login/GetCodeImage?id=1");

            System.Drawing.Image Source_image = (Image)bitmap;
            var random   = new Random();
            var name_img = random.Next(0, int.MaxValue);

            Source_image.Save("D:\\eda8888\\" + name_img + "_Code.jpg");
            //Bitmap bitmap = new Bitmap("D:\\617420430_Code.jpg");


            //解析验证码1
            using (var engine = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default))
            {
                using (var entity = engine.Process(bitmap))
                {
                    _checkCode = entity.GetText();
                }
            }
            _checkCode = InputText(_checkCode, _checkCode.Length);

            UnCodebase uncode = new UnCodebase(bitmap);

            if (Contains_a_Z(_checkCode))
            {
                //去图形边框
                uncode.ClearPicBorder(1);
                //灰度转换,逐点方式
                uncode.GrayByPixels();

                //去掉噪点
                //uncode.ClearNoise(50, 1);
                //图像二值化
                uncode.ConvertToBinaryImage();
                //扭曲图片校正
                uncode.ReSetBitMap();

                //解析验证码2
                using (var engine = new TesseractEngine(@"./tessdata", "eng", EngineMode.Default))
                {
                    using (var entity = engine.Process(uncode.bmpobj))
                    {
                        _checkCode = entity.GetText();
                    }
                }
            }

            _checkCode = _checkCode.Trim();
            _checkCode = _checkCode.Replace(" ", "");//这样替换下就可以了
            _checkCode = InputText(_checkCode, _checkCode.Length);

            System.Drawing.Image image = (Image)uncode.bmpobj;
            image.Save("D:\\eda8888\\" + InputText(_checkCode, _checkCode.Length) + "_Code.jpg");


            //登录验证
            _httpHelper.PostData = string.Format("username={0}&password={1}&code={2}",
                                                 _userName, _password, _checkCode);
            _httpHelper.SyncRequest("http://wp18011601.eda8888.com/App/Login");
        }