首页 新闻 会员 周边 捐助

C# 模拟登陆

0
悬赏园豆:50 [待解决问题]

带有验证码的模拟登陆,有源码的请把源码发我  谢谢

摩羯座的主页 摩羯座 | 初学一级 | 园豆:104
提问于:2015-12-15 15:46
< >
分享
所有回答(7)
0

如果是问问题,能不能认真点??

米修君 | 园豆:553 (小虾三级) | 2015-12-15 15:58

???

支持(0) 反对(0) 摩羯座 | 园豆:104 (初学一级) | 2015-12-15 15:58

@摩羯座: 你发出的问题,连语文老师那里都通不过,明白为什么人家叫你认真点了吗?

支持(0) 反对(0) arg | 园豆:1047 (小虾三级) | 2015-12-15 18:39
0

如果是问问题,能不能认真点??

羽商宫 | 园豆:2490 (老鸟四级) | 2015-12-15 16:25
0

找到验证码的URL,在模拟登录之前,自己请求一次验证码,显示出来,手动输入(如果是高手可以图片识别也可以)即可。

CodeHsu | 园豆:5668 (大侠五级) | 2015-12-15 23:40
0

感觉还是在自己做的网站上模拟比较好

JackWang-CUMT | 园豆:2866 (老鸟四级) | 2015-12-16 06:36
0

public class CheckCode : IHttpHandler,IRequiresSessionState     {

        public void ProcessRequest(HttpContext context)  

       {           

  context.Response.ContentType = "text/jepg";    

         char [] AllChars = new char[62];      

       char ch = '0';         

    for (int i = 0; i < 10; i++)          

   {                 AllChars[i] = ch;                 ch =(char)(ch + 1);             }   

          ch = 'a';           

  for (int i = 10; i < 36; i++)  {               

    AllChars[i] = ch;                

    ch = (char)(ch + 1);      }            

ch = 'A';             for (int i = 36; i < 62; i++)   

          {                 AllChars[i] = ch;                 ch = (char)(ch + 1);             }

            string checkCode = "";             Random random = new Random();             for (int i = 0; i <4; i++)             {                 checkCode += AllChars[random.Next(0, 62)];             }

            //将验证码保存到Session中,用于和用户输入的验证码做比对             context.Session["CheckCode"] = checkCode;

            //处理到图像中             //1 创建位图对象,width和hight,单位是px,默认背景颜色是黑色             Bitmap bitmap = new Bitmap(60, 30);             //2 创建画布对象,将位图放置到画布上             Graphics g = Graphics.FromImage(bitmap);             //3 将验证码画到画布上             //将画布刷成白色背景,留1px的边框线             g.FillRectangle(Brushes.White, 1, 1, 58, 28);             g.DrawString(checkCode, new Font("Times New Roman", 15), Brushes.Blue, 2, 2);             //4 画一些干扰线,干扰点             for (int i = 0; i < 300; i++)             {                 bitmap.SetPixel(random.Next(1, 58), random.Next(1, 28), Color.Gray);             }

            //写回到Response             bitmap.Save(context.Response.OutputStream, System.Drawing.Imaging.ImageFormat.Jpeg);             //context.Response.Flush();             //context.Response.End();         }

猿进化 | 园豆:174 (初学一级) | 2015-12-27 15:51
0

建议使用这个进行模拟登陆,但是验证码的问题需要针对不同样式的验证码进行不同的识别,这个需要高手。http://www.sufeinet.com/forum-135-1.html

木乌 | 园豆:1015 (小虾三级) | 2016-01-13 09:03
0

http://www.51pansou.com  可以搜索你想要的代码

docker_net | 园豆:230 (菜鸟二级) | 2016-01-14 12:15
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册