自学内容网 自学内容网

校园网自动登录脚本【Windows 10】

如果要使用校园网,必须打开浏览器输入校园网地址,之后输入账号密码登录。实验室电脑绝大多数情况下应该处于联网状态,但不幸的是,我深会限制校园网客户端数量,一旦有新设备接入,很可能实验室电脑就会断网。这时,你又要重新打开校园网网址,输入账号密码…此刻,我就在想 windows 能不能实现自动登录校园网🤔。

前提

本项目通过 powershell 脚本实现,请检查自己的电脑里有没有 powershell 程序。

即使学校不是深圳大学,也可以参照本文自动登录校园网的思路,同时下文也说明了可能需要修改的地方。

Powshell 官方指路 👉 https://learn.microsoft.com/zh-cn/powershell/

核心逻辑

我们会找一个第三方网址来判断是否连接校园网,如果没有连接到校园网,就向校园网服务器发送 POST 请求。
在这里插入图片描述

代码实现

为了脚本的可扩展性和照顾到其它学习的同学,将核心变量都以用户系统变量的方式存储。如果后期需要更改账号密码,也更加方便。代码如下(文件名:AutoConnect.ps1)

function Get-EnvValue{
  param (
    [string]$envVarName,
    [string]$defaultValue
  )
  $envValue = Get-Item -Path "Env:$envVarName" -ErrorAction SilentlyContinue
  if ($envValue) {
      return $envValue.Value
  } else {
      return $defaultValue
  }
}

$test_url=Get-EnvValue -envVarName "TEST_CONNECT_URL" -defaultValue "baidu.com"
$user_id=Get-EnvValue -envVarName "SZU_USERID" -defaultValue "123" 
$password=Get-EnvValue -envVarName "SZU_PASSWORD" -defaultValue "123"
$loginUrl=Get-EnvValue -envVarName "LOGIN_URL" -defaultValue "https://drcom.szu.edu.cn/"
$bodyTemplate="DDDDD=$user_id&upass=$password&R1=0&R2=&R6=0&para=00&0MKKey=123456"

while (1){
  set str =$(ping -n 3 -w 80 $test_url)
  $result=[regex]::matches($str,'100% ')
  if($result.Success){
    echo $user_id
    Invoke-WebRequest -UseBasicParsing -Uri $loginUrl `
    -Method "POST" `
    -Body $bodyTemplate
    sleep 2
  }
  else{
    sleep 600
  }
}

涉及到的用户变量如下

变量名用户/系统变量含义
test_urlTEST_CONNECT_URL测试联网第三方网站
user_idSZU_USERID账号
passwordSZU_PASSWORD密码
loginUrlLOGIN_URL校园网地址

如何设置系统变量,有好多资料我就不再啰嗦了,一图搞定。

在这里插入图片描述

但是,windows 出于安全考虑,默认是不允许执行powershell脚本,因此需要我们修改执行策略:

  • 以管理员方式打开powershell,输入
set-executionpolicy remotesigned

回车,然后输入y,再回车即可。

  • 进入该文件所在文件夹 打开cmd 运行脚本
start powershell -File "AutoConnect.ps1"

电脑退出校园网登录,测试脚本是否可行。

在测试时,sleep 睡眠时间可以设置小一点,建议 5 s。

脚本启动时运行

  1. 在同级目录下,新建一个txt文件,写入以下内容后,改名为 AutoConnect.cmd
start powershell -WindowStyle Hidden -Command "AutoConnect.ps1"
  1. 打开控制面板,找到任务计划程序选项
    • 打开控制面板
      在这里插入图片描述

    • 查看方式为大类别,选择管理工具
      在这里插入图片描述

    • 找到任务计划程序
      在这里插入图片描述

  2. 创建自动登录计划任务
    在这里插入图片描述
    3.1 触发器设置
    在这里插入图片描述
  3. 指定启动脚本
    在这里插入图片描述

测试

ok,现在已经完成了。赶快重启电脑测试一下,脚本运行成不成功吧!!!ヾ(≧▽≦*)o

参考

  1. Renegade12138, 校园网自动登录,断线重连 - CSDN, 2020

原文地址:https://blog.csdn.net/m0_61552056/article/details/140451188

免责声明:本站文章内容转载自网络资源,如本站内容侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!