原理:本文是通过发起Post请求进行校园网登录认证,并设置识别加入指定wifi自动进行认证
提示:配置完成后每次连接wifi会闪过一个窗口,那是脚本自动运行并关闭的画面,如果想看运行结果只需在login.bat文件代码末尾添加一句pause
第一步:通过edge浏览器抓取请求参数
我们只需要获取queryString参数:
连接CQUST校园网wifi(如果已登录请断开连接),并打开浏览器输入网址:172.28.228.2,页面自动跳转后的url问号后面的值就是我们需要的参数:
将问号后的值全部复制下来,即可获得queryString,例如我的queryString=
第二步:新建脚本文件
如未显示后缀名请打开任意文件夹(否则跳过这一步):
将该选项取消勾选
在任意位置新建文本,例如我在桌面新建一个txt文本文档。
打开并复制粘贴以下代码
curl --location --request POST "http://aaa.cqust.edu.cn/eportal/InterFace.do?method=login" ^
--header "Content-Type: application/x-www-form-urlencoded; charset=UTF-8" ^
--header "User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/113.0.0.0 Safari/537.36" ^
--header "Accept: */*" ^
--header "Host: aaa.cqust.edu.cn" ^
--header "Connection: keep-alive" ^
--data-urlencode "userId=" ^
--data-urlencode "password=" ^
--data-urlencode "queryString=" ^
--data-urlencode "operatorPwd=" ^
--data-urlencode "operatorUserId=" ^
--data-urlencode "validcode=" ^
--data-urlencode "passwordEncrypt=false"
并在--data-urlencode "userId="填入你的校园网账号(即你的学号),同理,在password后填入密码,在queryString后填入上一步获取到的queryString,结果如图:
Ctrl+S保存,关闭并单击文件按F2修改文件名为:XXX.bat(例如:login.bat)
到这一步认证脚本就已经写好了。
第三步:将脚本设为接入某wifi自动运行
按Win+S,弹出windows搜索框,搜索任务计划程序,回车运行
单击创建任务
按照下图配置
然后新建触发器
新建事件筛选器
点击事件日志选择应用程序和服务日志--Microsoft--Windows--WLAN-AutoConfig--Operational
点击事件来源选择WLAN-AutoConfig
填入事件ID:8001
然后点击XML,勾选手动编辑查询,并在Select前添加如下代码,如图所示
[EventData[Data[@Name='SSID']='CQUST']]
其中CQUST为WIFI名称,如果要识别多个WIFI请改为以下代码
[EventData[Data[@Name='SSID']='WiFi_Name_1'] or EventData[Data[@Name='SSID']='WiFi_Name_2']]
点击确定保存即可
然后回到创建任务窗口,选择操作,新建操作
选中刚才的脚本点击打开
点击确定保存
此时已全部完成,可断开wifi重新连接进行测试。