php用get方法批量查询考试成绩

整理电脑文件,偶然翻到自己用好奇其他人的普通话成绩,写的一个小脚本。

大体思路:

1初始化学号序列

2用php提交get请求抓取返回页面,正则提取成绩

3直接输出结果到html

 1 <html>
 2 <!--
 3 时间:2:03 2014/5/24 星期六
 4 作者:622
 5 名称:普通话考试批量说明
 6 说明:此程序仅用于get方式单学号无验证码查询
 7 
 8 在Apache+PHP环境下,修改中文名字为英文即可运行
 9 
10 -->
11 <table border="1" cellspacing="0">
12 <?php
13 set_time_limit(0);//设定一个程式所允许执行的秒数,它预设的限制时间是30秒
14 $num = 201100140001;//初始学号
15 while($num < 201100140190){ //终止学号
16     $handle = fopen("http://www.pjjs.sdu.edu.cn/yywz/submitquery.asp?studentname=".$num, "r"); 
17     $contents = stream_get_contents($handle); 
18     $pattern = '/<font\scolor=red\ssize=2>(.*?)<\/font>/xm';
19     if(preg_match_all($pattern,$contents,$matches)){
20     ?>
21         <tr>
22             <td><?=$matches[1][1]?></td>
23             <td><?=$matches[1][0]?></td>
24             <td><?=$matches[1][2]?></td>
25             <td><?=$matches[1][3]?></td>
26             <td><?=$matches[1][4]?></td>
27             <td><?=$matches[1][5]?></td>
28         </tr>
29     <?php
30     }
31     else{
32     echo "<tr>
33         <td>".$num."</td>
34         <td colspan=5>查无此人</td>
35     </tr>";
36     }
37     $num ++;
38 }
39 ?>
40 </table>
41 </html>

 

转载于:https://www.cnblogs.com/liulele/p/7052358.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值