public static T jwc_examtable <T>() { JWCHttpHelper d = new JWCHttpHelper("http://inquiry.ecust.edu.cn/ecustedu/K_StudentQuery/K_TestTableDetail.aspx?key=0"); d.HttpPost("__EVENTTARGET=&__EVENTARGUMENT=&__LASTFOCUS=&__VIEWSTATE=%2FwEPDwULLTE2NTU5MjUyNDUPZBYCAgEPZBYCAgEPZBYIAgEPZBYCZg9kFgQCAQ8QZBAVDQnor7fpgInmi6kFMjAxNzEFMjAxNjIFMjAxNjEFMjAxNTIFMjAxNTEFMjAxNDIFMjAxNDEFMjAxMzIFMjAxMzEFMjAxMjIFMjAxMjEFMjAxMTIVDQnor7fpgInmi6kFMjAxNzEFMjAxNjIFMjAxNjEFMjAxNTIFMjAxNTEFMjAxNDIFMjAxNDEFMjAxMzIFMjAxMzEFMjAxMjIFMjAxMjEFMjAxMTIUKwMNZ2dnZ2dnZ2dnZ2dnZ2RkAggPEGRkFgFmZAICD2QWAmYPZBYCZg8PFgIeBFRleHQFMTIwMTctMjAxOOWtpuW5tOesrDHlrabmnJ%2FnmoTogIPor5XooajkuI3lrZjlnKjvvIFkZAIDD2QWAmYPZBYGZg8PFgIfAGVkZAICDw8WAh8AZWRkAgQPDxYCHwBlZGQCBA9kFgJmD2QWAmYPPCsACwEADxYCHgdWaXNpYmxlaGRkZC74a7y14FQ9u95U4X%2BZFk%2BC6jss&ddlYearTerm=20162&btnSelect=%E6%9F%A5%E8%AF%A2&RdbCourse=%E4%B8%AA%E4%BA%BA%E8%80%83%E8%AF%95%E8%A1%A8&__EVENTVALIDATION=%2FwEWEgLmo53ZCgLekp65DQKA%2BtHTAQKP%2BqX0CAKA%2BqX0CAKP%2BokJAoD6iQkCj%2FqdogsCgPqdogsCj%2FrhxgICgPrhxgICj%2Fr1mwoCgPr1mwoCj%2FrZvAUC2sfb1QYCuaHTqAgCj%2FnpnQ4CwZTn4whWHkuO6LHUmnWxc9LhgAqJGND3xA%3D%3D"); string html = d.ToString(); Regex songti = new Regex("<font face=\"宋体\" color=\"Black\">"); html = songti.Replace(html, ""); Regex zhiti = new Regex("</font>"); html = zhiti.Replace(html, ""); //缺个正则 return((T)(object)html); }
public static T jwc_classtablehtml <T>() { if (typeof(T).Name.Equals("String")) { JWCHttpHelper d = new JWCHttpHelper("http://inquiry.ecust.edu.cn/ecustedu/E_SelectCourse/ScInFormation/syllabus.aspx"); d.HttpPost("__VIEWSTATE=%2FwEPDwUKLTg3NzgzODIwNw9kFgICAQ9kFgICAw8QDxYGHg1EYXRhVGV4dEZpZWxkBQhZZWFyVGVybR4ORGF0YVZhbHVlRmllbGQFAnNtHgtfIURhdGFCb3VuZGdkEBUCBTIwMTcxBTIwMTYyFQIJ5LiL5a2m5pyfCeacrOWtpuacnxQrAwJnZ2RkZNO%2Fri3X13dLfsVR9NFAAfI1ATzP&selyeartermflag=%E4%B8%8B%E5%AD%A6%E6%9C%9F&bttn_search=%E6%9F%A5%E8%AF%A2&__EVENTVALIDATION=%2FwEWBAKX%2B67KDQKukO%2FqDwLJpuDqDwK1man8CYWGxTfqcteijecSaCWqU1U3a0ll"); string html = d.ToString(); Regex songti = new Regex("<font face=\"宋体\" color=\"Black\">"); html = songti.Replace(html, ""); Regex zhiti = new Regex("</font>"); html = zhiti.Replace(html, ""); Regex zhihao = new Regex("<font size=1>"); html = zhihao.Replace(html, ""); return((T)(object)html); } return(default(T)); }
public static T jwc_smalltable <T>() { JWCHttpHelper d = new JWCHttpHelper("http://inquiry.ecust.edu.cn/ecustedu/K_StudentQuery/K_ScoreTableYearTerm.aspx?i=0%3a26%3a46"); d.HttpPost("__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwUKLTM1MDcwMDg1MQ9kFgICAQ9kFgICAQ9kFgZmD2QWAmYPZBYCAgMPDxYCHgdFbmFibGVkaGRkAgEPZBYCZg9kFgICAQ8QDxYGHg1EYXRhVGV4dEZpZWxkBQhUZXJtTmFtZR4ORGF0YVZhbHVlRmllbGQFCFllYXJUZXJtHgtfIURhdGFCb3VuZGdkEBUFFeKAlOKAlOivt%2BmAieaLqeKAlOKAlBYyMDE2LTIwMTflrablubQy5a2m5pyfFjIwMTYtMjAxN%2BWtpuW5tDHlrabmnJ8WMjAxNS0yMDE25a2m5bm0MuWtpuacnxYyMDE1LTIwMTblrablubQx5a2m5pyfFQUBMAUyMDE2MgUyMDE2MQUyMDE1MgUyMDE1MRQrAwVnZ2dnZ2RkAgMPZBYCZg9kFgJmDzwrAAsAZGSDV9YWPjkZzs%2BQA3Jxh1jr8S5yVA%3D%3D&ddlYearTerm=20162&btnSelect=%E6%9F%A5%E8%AF%A2&__EVENTVALIDATION=%2FwEWCQLCq5zYDAKC5sFXApf3trkEAtjpwosFAo%2F6pfQIAoD6pfQIAo%2F6iQkCgPqJCQLax9vVBk%2F0%2B3xjQYQIiqbgEfy%2FW8XcekCs"); string html = d.ToString(); Regex songti = new Regex("<font face=\"宋体\" color=\"Black\">"); html = songti.Replace(html, ""); Regex zhiti = new Regex("</font>"); html = zhiti.Replace(html, ""); Regex regex = new Regex(@"<td>(?<kemu>[^<]*)</td><td>[^<]*</td><td>[^<]*</td><td>[^<]*</td><td>[^<]*</td><td>[^<]*</td><td>(?<juanmianfen>\d*(\.\d+)?)[^<]*</td><td>(?<pingshifen>\d*(\.\d+)?)[^<]*</td><td>(<font[^>]*>)?(?<fengshu>\d*(\.\d+)?)[^<]*(</font[^>]*>)?</td><td>\d*(\.\d+)?[^<]*</td><td>\d+(\.\d+)?[^<]*</td>"); MatchCollection mc = regex.Matches(html); if (typeof(T).Name.Equals("String")) { string result = ""; foreach (Match item in mc) { GroupCollection gc = item.Groups; result = result + gc["kemu"].Value + ":" + gc["fengshu"].Value + "\n"; } result = result + "以上为本学期成绩"; return((T)(object)result); } else if (typeof(T).Name.Equals("JsonResult")) { JsonResult json = new JsonResult(); var data = new object[mc.Count]; for (int i = 0; i < mc.Count; i++) { GroupCollection gc = mc[i].Groups; var kemu = gc["kemu"].Value; var fengshu = gc["fengshu"].Value; data[i] = new { kemu, fengshu }; } json.Data = data; json.JsonRequestBehavior = JsonRequestBehavior.AllowGet; return((T)(object)json); } return(default(T)); }
public static void Login(string studentnum, string pwd) { if (HttpUtility.UrlDecode(pwd).Length > 10) { ErrorMsg = "您现在设置的教务处密码:" + HttpUtility.UrlDecode(pwd) + ",不正确。请重新输入jwc+您的教务处密码来解锁此功能,如jwc123456"; return; } JWCHttpHelper a = new JWCHttpHelper("http://inquiry.ecust.edu.cn/ecustedu/K_StudentQuery/K_StudentQueryLogin.aspx"); a.HttpGet(); JWCHttpHelper b = new JWCHttpHelper("http://inquiry.ecust.edu.cn/ecustedu/Base/VerifyCode.aspx"); Bitmap input = b.HttpGetImage(); IdentificatImage id = new IdentificatImage(input); string vc = id.result; JWCHttpHelper c = new JWCHttpHelper("http://inquiry.ecust.edu.cn/ecustedu/K_StudentQuery/K_StudentQueryLogin.aspx"); c.HttpPost("__EVENTTARGET=&__EVENTARGUMENT=&__VIEWSTATE=%2FwEPDwULLTE2OTIxNDU0MTMPZBYCAgEPZBYCAgcPDxYCHgRUZXh0BVDlrabnlJ%2FliJ3lp4vlr4bnoIHkuLrouqvku73or4Hlj7flkI7lha3kvY3jgILlr4bnoIHplb%2FluqbkuI3otoXov4cxMOS4quWtl%2BespuOAgmRkZDanEMgmeoYOigCgOHJXPnTdIOtq&TxtStudentid=" + studentnum + "&TxtPassword="******"&txt_verifyCode=" + vc + "&BtnLogin=%E7%99%BB%E5%BD%95&__EVENTVALIDATION=%2FwEWBQKMjOWyBAKf8ICgBwLVqbaRCwLW2qK1CALi44eGDA67X3bLsDOxfx3HDe98WpJ8%2Bncw"); string html = c.ToString(); if (JWCHttpHelper.regexsuccess.IsMatch(html)) { IsLogin = true; return; } else if (JWCHttpHelper.regexpwdfail.IsMatch(html)) { ErrorMsg = "您现在设置的教务处密码:" + HttpUtility.UrlDecode(pwd) + ",不正确。请重新输入jwc+您的教务处密码来解锁此功能,如jwc123456"; return; } else if (JWCHttpHelper.regexstudentnumfail.IsMatch(html)) { ErrorMsg = "学生初始密码为身份证号后六位。密码长度不超过10个字符。"; return; } else if (JWCHttpHelper.regexvcfail.IsMatch(html)) { Login(studentnum, pwd); } ErrorMsg = "学号或密码错误"; return; }