本文长时间未进行更新,文中所描述的信息可能已发生改变,请谨慎参考。
2017 年 6 月英语四六级成绩可以在 8 月 22 日上午 9:00 后进行查询,而这次成绩查询与以往不同的是,本次查询的官方渠道只有 中国教育考试网 和 中国高等教育学生信息网 这两个了,原来的 99 宿舍 不知为何这次并没有获取到授权,众所周知,99 宿舍 是支持找回准考证号的,这次没有授权这个功能也就用不了了,这就使得一部分忘记准考证号的同学很蓝瘦了......

这个时候诸多蹭热点的新闻媒体也纷纷献出“锦囊妙计”,给了一个相同的坑爹的方法,利用 15 位准考证号的格式规律去推演自己的号码,即前 5 位是学校代码,之后 1 位是校区代码,再之后是 2 位年份、 1 位考季、1 位四六级标识,最后是 3 位 考场和 2 位座号,也就说只要今年 6 月在一个学校考的 CET,那前你就可以通过周围的同学得知,可坑爹的就在后 5 位,考完这么长时间早就把考场信息忘得一干二净了,就算只有 50 个考场,每个考场 25 人,也得至少试个几百次吧.....世界那么大,方法总会有的,成绩可以查询不久后网上就有出现一段 js 查询脚本,大概是神人发现了 全国大学英语四、六级考试委员会 的官方 APP 中可以利用身份证查询准考证,便把这个接口抓了出来。

// 先访问 http://app.cet.edu.cn:7066/baas/app/setuser.do?method=UserVerify ,然后在这个 500 错误页按 F12 键打开开发者选项,在 console 里运行以下代码
(function(d, s) {
d.body.appendChild(s = d.createElement('script')).src = 'http://code.jquery.com/jquery-1.9.1.min.js'
})(document);
var url = "http://app.cet.edu.cn:7066/baas/app/setuser.do?method=UserVerify";
var ks_data = {
"ks_xm": "你的姓名",
"ks_sfz": "你的身份证号",
"jb": "1" // 四级为 1,六级为 2
};
var postdata = {
"action": "",
"params": JSON.stringify(ks_data)
};
$.post(url = url, data = postdata, callback = function(data) {
data = $.parseJSON(data);
console.log(data);
});这段 js 虽短小精悍,但操作对大多数人还是不太友好的,下面是根据此接口改写的 PHP 版本核心代码。
<?php
function curl_request($url, $post) {
$headers = array(
"Content-type: application/x-www-form-urlencoded; charset='utf-8'",
"Host: app.cet.edu.cn:7066",
"Origin: http://app.cet.edu.cn:7066",
"Referer: http://app.cet.edu.cn:7066/baas/app/setuser.do?method=UserVerify"
);
$curl = curl_init();
curl_setopt($curl, CURLOPT_URL, $url);
curl_setopt($curl, CURLOPT_HTTPHEADER, $headers);
if ($post) {
curl_setopt($curl, CURLOPT_POST, 1);
curl_setopt($curl, CURLOPT_POSTFIELDS, http_build_query($post));
}
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
$data = curl_exec($curl);
if (curl_errno($curl)) {
return curl_error($curl);
}
curl_close($curl);
return $data;
}
echo "<pre>";
$arr = array("ks_xm" => "你的姓名", "ks_sfz" => "身份证", "jb" => "四六级标识");
var_dump($arr);
$json = json_encode($arr);
$data = array("params"=>$json);
var_dump(curl_request('http://app.cet.edu.cn:7066/baas/app/setuser.do?method=UserVerify', $data));为了方便小伙伴们查询我把它移植到 Z-Blog 上了,可以直接在线查询,传送门在这里---->https://www.lanseyujie.com/query/cet。
