PHP模拟登录武汉理工大学教务处并获取课程信息
随风飘扬 php 2016年09月22日9:00 2105
<?php $curl = curl_init(); $heade
<?php $curl = curl_init(); $header = array( 'Accept:text/html,application/xhtml+xml,application/xml;q=0.9,image/webp,*/*;q=0.8', 'Connection:keep-alive', 'Cookie:', 'Host:sso.jwc.whut.edu.cn', 'Referer:http://sso.jwc.whut.edu.cn/Certification/toIndex.do', 'User-Agent:Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/51.0.2704.106 Safari/537.36' ); $request = 'systemId=&xmlmsg=&userName='.$_GET['sno'].'&password='.$_GET['pwd'].'&type=xs&imageField.x=6&imageField.y=10';//POST请求 curl_setopt($curl, CURLOPT_URL,'http://sso.jwc.whut.edu.cn/Certification/login.do'); curl_setopt($curl, CURLOPT_POST, 1); curl_setopt($curl, CURLOPT_HTTPHEADER, $header); curl_setopt($curl, CURLOPT_POSTFIELDS, $request); curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); curl_setopt($curl, CURLOPT_HEADER, false); $content = curl_exec($curl); curl_close($curl); $content = str_replace(' ', '', $content);//获取页面源代码 $preg = "/<span class=\"font2\">(.*)<\/span>/i"; $preg1 = "/<td align=\"center\">(.*)<\/td>/i"; $preg2 = "/<td>(.*)<\/td>/i"; preg_match_all($preg, $content, $arr); preg_match_all($preg1, $content, $p); preg_match_all($preg2, $content, $v); for($i=0;$i<count($v[1]);$i+=7){//生成课程信息 $class[] = array( 'name'=>$v[1][$i], 'teacher'=>$v[1][$i+1], 'time'=>$v[1][$i+2], 'room'=>$v[1][$i+3], 'type'=>$v[1][$i+4], 'point'=>$p[1][$i/7] ); } $data['info'] = array('name'=>$arr[1][0],'phone'=>$arr[1][1]); $data['class'] = $class; $this->ajaxReturn($data); ?>
当然,上面的例子只能获取到最简单的课程信息,成绩啊什么的需要跳转子系统,这个写法还没来得及研究。
虎xcwwu泰kxyd_克qkhs_新ez闻r_c网vt版权所有,请勿未授权转载!!!
声明:凡本网转载的文/图等稿件,均出于传递更多信息及方便探讨之目的,并不意味着本站及主办、承办单位赞同其观点或证实其内容的真实性,文章内容仅供参考,如果侵犯了原作者的权利请与网站管理员联系。
评论列表
-
暂无数据