校园网一键登录
写python脚本来一键登录,免去输密码的困扰.
需要说明的是,这不是破解脚本,这是需要用到你的校园网宽带账号的,没有账号是无法实现的,这个脚本只是方便登录校园网仅此而已
很简单的一个脚本
- 电脑链接学校wifi,它会自动弹出登录认证的网页页面(如果页面弹出不及时,或者你之前保存的登录认证的页面的书签,在浏览器端点击打开也行)
- 这里以谷歌浏览器为例进行操作
- 首先打开浏览器,打开校园网的登录页面,摁F12键打开浏览器的开发者模式
- 在校园网页面输入账号和密码
- 点击登录
- 登录成功,在工作台Network中找相关信息,将其复制到代码中
- 运行代码
以下是代码模板样式,可以根据自己的需求进行改进(信息隐私,部分信息我用xxxxxxx代替,自己可以根据自己的信息进行更改,基本打xxxxxx都是要修改的)
import base64
import requests
#此处根据自己校园网的登录信息中发送的数据进行更改
c = 'Portal'
a = 'login'
callback = 'dr1600945876837'
login_method = '1'
user_account = ',0,xxxxxxxxxx' #登录校园网账号
user_password = 'xxxxxxxx' #校园网密码
wlan_user_ip = '10.30.69.39'
wlan_user_mac = '000000000000'
wlan_ac_ip = '100.64.13.18'
# 登录地址,在浏览器中的request URL,直接复制进去
post_addr = "http://1xxxxxxxxx/eportal/?c=Portal&a=login&cxxxxxxxxxxxxxx_name=&jsVersion=3.1&_=1605542117007"
# 构造头部信息 注意Cookie可能十分重要,而且Cookie会有过期时间(我们学校的不需要cookie也可以使用),过期之后,可能需要复制新的Cookie替换。
#这里不需要cookie值也行,就没添加进来.
post_header = {
'Accept': '*/*',
'Accept-Encoding': 'gzip, deflate',
'Accept-Language': 'zh-CN,zh;q=0.9',
'Connection': 'keep-alive',
'Host': '100.xxxxxxxx1',
'Referer': 'httpxxxxxxxxxxx18',
'User-Agent': 'Mozilla/5.0 (Wxxxxxxxx like Gecko) Chrome/78.0.3904.108 Safari/537.36'
#这些都是请求头的信息,根据样式复制就好
}
post_data = {
'c' : c,
'a' : a,
'callback' : callback,
'login_method' : login_method,
'user_account' : user_account,
'user_password' : user_password,
'wlan_user_ip' : wlan_user_ip,
'wlan_user_mac' : wlan_user_mac,
'wlan_ac_ip' : wlan_ac_ip
}#这些可以不用改动
# 发送post请求登录网页
z = requests.post(post_addr, data=post_data, headers=post_header)
print("登录成功,可以愉快的冲浪了!")
- 运行代码
注意:requests模块属于第三方库,初次安装python或者没有安装过requests模块的,就必须进行安装才能运行
-
代码测试成功后,就可以创建快捷方式或者直接打包成exe可执行文件,这样双击就能运行
-
第一种,创建快捷方式的做法
-
-
在pycharm中创建
Windows 批处理文件 (.bat)
(也可以在文本编辑器里创建),不过这里要注意编码问题,系统执行的是GBK编码格式的文件,而UTF-8执行不了,所以在pycharm中可以设置编码格式为GBK,文本的内容为:python 文件路径
,然后拓展名修改为.bat -
-
-
-
-
然后就有图标,可以复制到桌面上,双击就可以运行
-
-
-
第二种就是用pyinstaller打包成可执行文件,即使不用安装python也可以使用
- 没pyinstaller库的需要安装,可以直接在命令提示符中输入
pip install pyinstaller
- 用pyinstaller安装,在命令提示符中输入:
pyinstaller -F py的文件路径
- 没pyinstaller库的需要安装,可以直接在命令提示符中输入