原理:本文是通过发起Post请求进行校园网登录认证,并设置识别加入指定wifi自动进行认证

提示:配置完成后每次连接wifi会闪过一个窗口,那是脚本自动运行并关闭的画面,如果想看运行结果只需在login.bat文件代码末尾添加一句pause

第一步:通过edge浏览器抓取请求参数

我们只需要获取queryString参数:

连接CQUST校园网wifi(如果已登录请断开连接),并打开浏览器输入网址:172.28.228.2,页面自动跳转后的url问号后面的值就是我们需要的参数:

javascript校园网登录 just校园网_Data

将问号后的值全部复制下来,即可获得queryString,例如我的queryString=

javascript校园网登录 just校园网_搜索_02

第二步:新建脚本文件

如未显示后缀名请打开任意文件夹(否则跳过这一步):

javascript校园网登录 just校园网_Windows_03

 

javascript校园网登录 just校园网_搜索_04

 

javascript校园网登录 just校园网_javascript校园网登录_05

 

javascript校园网登录 just校园网_javascript校园网登录_06

将该选项取消勾选

 在任意位置新建文本,例如我在桌面新建一个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,结果如图:

javascript校园网登录 just校园网_搜索_07

 Ctrl+S保存,关闭并单击文件按F2修改文件名为:XXX.bat(例如:login.bat)

到这一步认证脚本就已经写好了。

第三步:将脚本设为接入某wifi自动运行

按Win+S,弹出windows搜索框,搜索任务计划程序,回车运行

javascript校园网登录 just校园网_搜索_08

 单击创建任务

按照下图配置

javascript校园网登录 just校园网_Windows_09

 

javascript校园网登录 just校园网_搜索_10

 

javascript校园网登录 just校园网_Data_11

 然后新建触发器 

javascript校园网登录 just校园网_Windows_12

javascript校园网登录 just校园网_Data_13

 

javascript校园网登录 just校园网_网络_14

新建事件筛选器

 点击事件日志选择应用程序和服务日志--Microsoft--Windows--WLAN-AutoConfig--Operational

 

javascript校园网登录 just校园网_Data_15

 点击事件来源选择WLAN-AutoConfig

javascript校园网登录 just校园网_Data_16

 填入事件ID:8001

javascript校园网登录 just校园网_搜索_17

 然后点击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']]

javascript校园网登录 just校园网_Data_18

 点击确定保存即可

然后回到创建任务窗口,选择操作,新建操作

javascript校园网登录 just校园网_javascript校园网登录_19

 

javascript校园网登录 just校园网_javascript校园网登录_20

 选中刚才的脚本点击打开

javascript校园网登录 just校园网_Windows_21

点击确定保存

 

javascript校园网登录 just校园网_网络_22

 

javascript校园网登录 just校园网_javascript校园网登录_23

 此时已全部完成,可断开wifi重新连接进行测试。