电子科技大学诸多校内网站都采用统一身份认证页面来进行验证,这意味着只需要一个登陆模板,就可以自动登陆大部分相关网站,自动获取其登录cookie并以此实现更多功能。
自动登陆网上服务大厅: 示例
例如:
- 通过自动登录实现免抓包来进行的每日健康报送
- 通过自动登录实现免跳转获取的本学期考试安排
- 通过自动登录实现免抓包进行的一卡通记录信息查询
- ......
Fork 此仓库或下载代码压缩包以立即开始使用, 点此查看使用指南。
此项目使用非常简单,直接作为外部模块引入使用。
实测支持 Windows,CentOS7, Unbuntu18.04 ,FireFox 浏览器可用。
需要安装对应的浏览器驱动,目前貌似只有 FireFox 能正常运行,其他浏览器都加载不出页面来,还在适配中。
Firefox 对应驱动下载: geckodriver
import uestc_login
使用模块的方法:
login() 方法
返回一个 WebDriver 对象,可以通过 driver.get_cookies()
等方法获取登陆后页面的cookie等数据
username:
学号password:
密码url:
需要登陆的网址,一般需要通过学校各种网站获取,例如网上服务大厅的认证网址为https://idas.uestc.edu.cn/authserver/login?service=https%3A%2F%2Feportal.uestc.edu.cn%3A443%2Flogin%3Fservice%3Dhttps%3A%2F%2Feportal.uestc.edu.cn%2Fnew%2Findex.html%3Fbrowser%3Dnobrowser:
使用的浏览器,需要安装对应的浏览器驱动,可选(默认为 Firefox)hide:
是否以无UI界面形式运行,可选(默认为 False, 在linux命令行界面上必须为True)executable_path:
浏览器驱动路径, 可选(默认为系统提供的路径, 一般配了环境变量就不需要此参数)binary_location:
浏览器路径,可选(默认为系统提供的路径, 一般正常默认安装浏览器就不需要此参数)
import uestc_login
uestc_login.login(username='2021XXXXXXXXX',
password='test',
url='https://idas.uestc.edu.cn/authserver/login',
browser=uestc_login.FIREFOX,
hide=False,
executable_path='D:\\WebDriver\\geckodriver-v0.31.0-win32\\geckodriver.exe',
binary_location='C:\\Program Files\\Mozilla Firefox\\firefox.exe')
使用 python + selenium 进行自动化登录,使用 opencv-python 来识别验证拼图位置并自动滑动滑块进行验证,同时也使用了 numpy 来进行一些多维数组的计算与处理。
Distributed under the MIT License. See LICENSE.txt
for more information.