懒人一键解决:每次连接校园网Web验证登录

前言

每次在寝室打开电脑,插上网线(或打开WiFi),连接校园网时,都会跳出学校的网站,让你输入账户密码,登入,才可以使用校园网。

作为一个实打实的懒人,虽然有浏览器的记住密码功能,但我还是觉得麻烦,所以就有了今天这一期。

环境

Win10

Python 3.9(其他版本也可)

Edge(是个浏览器就行)

方法

  • 如果你有 Python3.X 版本

你可以忽略此步。

  • 如果你有Python,但是版本<3.0

你可能需要在cmd中键入:

pip install requests

来安装requests库。

  • 如果你没有Python

你需要下载安装并配置Python。

网址:https://www.python.org/

鼠标放在Downloads上,单击Python 3.9.1,进行下载。

请一定一定一定要勾选 Add Python 3.9 to PATH ,并记住安装路径。

打开安装包,选择 Install Now ,勾选 Add Python 3.9 to PATH ,开始安装。

完成后单机 Close ,Disable path length limit 可选可不选。

你可能会碰到以下问题:

① 如果你选择了 Customize installation

默认下去就行。

② 如果你没有选择 Add Python 3.9 to PATH

请右击“此电脑” —> 属性 —> 高级系统设置 —> 环境变量 —> 用户变量中的Path —> 新建

你需要新建如下两个:

C:\Program Files (x86)\Python39\Scripts\

C:\Program Files (x86)\Python39\

注意:需要使用你自己的路径!

③ 如果你需要检测自己的Python是否配置成功,你可以:

Win+R 输入 cmd 确认,在cmd中输入:

python

如果现实与下方相似,则配置成功。

(至此,环境配置结束)

打开你的校园网Web验证网页

这里以我校寝室网为例:

此时不先急着登录,在此状态下按下 F12 ,选择 Network ,勾选 Preserve log 。

现在键入你的账号密码登录,你会发现有如下信息出现(选择Name列第一个的Headers):

你需要用到的信息是其中的 Request Headers 和 Form Data ,将它们复制到记事本中,并加工成如下形式(对冒号两边的键值对加上双引号,之后在最后面加上逗号):

'Connection' : 'keep-alive',

(至此,可以开始编写代码了)

你可以新建一个记事本来撸代码,当然如果你有IDE的话就更好了。

模板代码

import requests  #导入 requests 库

url = '(放入校园网认证网页的网址)'  #校园网认证网页的网址

data = {  # 登录信息

(放入处理好的 Form Data)

}

header = {  # 模拟网站

(放入处理好的 Request Headers)

}

response = requests.post(url,data,headers=header).status_code  # 上传连接信息至学校服务器

print('响应代码{}'.format(response))  # 返回连接结果

示例代码

import requests  #导入 requests 库

url = 'http://192.168.?.?/'  #校园网认证网页的网址

data = {  # 登录信息

'DDDDD' : '20180232????',  # 账号

'upass' : '??????',  # 密码

'0MKKey' : '(unable to decode value)',

}

header = {  # 模拟网站

'Accept' : 'text/html,application/xhtml+xml,application/xml;q=0.9,image/avif,image/webp,image/apng,*/*;q=0.8,application/signed-exchange;v=b3;q=0.9',

'Accept-Encoding' : 'gzip, deflate',

'Accept-Language' : 'zh-CN,zh;q=0.9,en;q=0.8,en-US;q=0.7',

'Cache-Control' : 'max-age=0',

'Connection' : 'keep-alive',

'Content-Length' : '52',

'Content-Type' : 'application/x-www-form-urlencoded',

'Host' : '192.168.?.?',

'Origin' : 'http://192.168.?.?',

'Referer' : 'http://192.168.?.?/',

'Sec-GPC' : '1',

'Upgrade-Insecure-Requests' : '1',

'User-Agent' : 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/87.0.4280.101 Safari/537.36',

}

response = requests.post(url,data,headers=header).status_code  # 上传连接信息至学校服务器

print('响应代码{}'.format(response))  # 返回连接结果

注意:

①所有字符都是在英文输入法下输入。

②请一定注意缩进和保证缩进格式相同。

如果你是要记事本撸的代码,撸完之后保存并重命名为 SchoolNetLogin.py 。

SchoolNetLogin 是你取的名字,.py是后缀名(请确保这一点)。

之后双击就可以运行了。

(至此,代码完成)

如果你想开机启动这个程序:

在搜索框中输入计划任务打开,创建基本任务。

填写名称和描述。

触发器选择计算机启动时。

操作选择选择程序。

添加你刚刚写好的脚本,其余不填。

完成。

(至此,开机启动完成)

缺点

只能用于Web认证且无验证码的校园网登录。

后记

其实这文章扯的比较多,把Python的配置和win计划任务都讲了。这个代码也是初级的,功能不是很多,也可能会出错。de出来的bug可放评论区或私信交流。

(0)

相关推荐