命令行(无图形界面)登录dlut-lingshui

news2024/9/20 19:43:11

1 登录原理

利用python的requests库向校园网认证服务器发送认证请求。

2 登录步骤

  1. 获取校园网认证界面的用户名和密码。用户名是自己学号;密码由网页加密,需要一台有图形界面的电脑辅助获取,获取方法见下一节。
  2. 把获取到的用户名和密码填入下面的python代码中,保存运行即可。
import requests
import time
captive_server = 'http://www.google.cn/generate_204'

def login():
    url_index = 'http://123.123.123.123/'
    user_agent = 'Mozilla/5.0 (X11; Linux x86_64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36'
    user_name = '这里填写你的用户名'
    password = '这里填写加密后的密码密文'

    login_page_url = requests.get(url_index).text.split('\'')[1]
    login_url = login_page_url.split('?')[0].replace('index.jsp', 'InterFace.do?method=login')
    query_string = login_page_url.split('?')[1]
    query_string = query_string.replace('&', '%26')
    query_string = query_string.replace('=', '%3D')
    headers = {
        'Accept': '*/*',
        'Accept-Encoding': 'gzip, deflate',
        'Accept-Language': 'zh-CN,zh;q=0.9',
        'Content-Type': 'application/x-www-form-urlencoded; charset=UTF-8',
        'Proxy-Connection': 'keep-alive',
        'Referer': login_url,
        'User-Agent': user_agent,
        }
    login_post_data = 'userId={}&password={}&service=&queryString={}&operatorPwd=&operatorUserId=&validcode=&passwordEncrypt=true'.format(user_name, password, query_string)
    login_result = requests.post(url=login_url, data=login_post_data, headers=headers).content.decode('utf-8')
    print(login_result) #有success返回即为登陆成功


if __name__ == '__main__':
    code = 200
    while code != 204:
        code = requests.get(captive_server).status_code
        if code != 204:
            try:
                login()
            except:
                print('10秒后尝试连接')
                time.sleep(10)

3 获取用户名和密码

获取密码的原理是在校园网登录过程中,从网页cookie读取加密后的密码,因此需要一台具有图形界面并且已经登录自己校园网账号的电脑来进行这个过程。

3.1 获取用户名密码步骤(以谷歌浏览器为例)
  1. 打开浏览器,按“F12”进入开发者工具
  2. 地址栏输入“auth.dlut.edu.cn”并回车步骤1,2示例
  3. 输入自己的账号密码后,保存密码并点击登录(也有可能直接出现登录成功界面)
  4. 依次在开发者工具中点击“网络”,“Interface…method=getOnlineUserInfo”,“Headers”
  5. 在“Cookie”一栏中找到储存的用户名和密码(密码以密文的形式存储)步骤4,5示例
  6. 把获取到的用户名密码填写到第2章的python代码中

Q&A

Q:辅助电脑一定要登录自己校园网吗?
A:不一定,只要能找到加密后的密码就行,只是已经登陆的电脑比较好找。

Q:校园网密码更改以后需不需要更新密文?
A:需要更新。

Q:辅助电脑打不开auth.dlut.edu.cn?
A:检查一下电脑是不是挂了代理或者有其他网络改动,如果没法排查可以借用同学电脑。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1381845.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Linux操作命令详解(file、history和find命令的使用)

目录 知识结构 文件类型查询file命令 1.file命令 2.[ -d 文件名 ]判断是什么类型 3.test -d 文件名 history命令 find命令 查找文件 对查找文件执行命令 知识结构 文件类型查询file命令 在windows中,我们的文件通过后缀名来决定。比如说.txt结尾的文件就是…

uniapp 实战 -- app 的自动升级更新(含生成 app 发布页)

uniapp 提供了 App升级中心 uni-upgrade-center ,可以便捷实现app 的自动升级更新,具体编码和配置如下: 1. 用户端 – 引入升级中心插件 下载安装插件 uni-upgrade-center - App https://ext.dcloud.net.cn/plugin?id4542 pages.json 中添加…

ImportError: cannot import name ‘Doc‘ from ‘typing_extensions‘

在训练大模型时候出现:ImportError: cannot import name ‘Doc’ from ‘typing_extensions’ 。 问题 原因 安装的typing_extensions版本不正确 解决方法 pip install typing_extensions4.8.0

SpringCloud全链路灰度发布

日升时奋斗,日落时自省 目录 1、实现框架 2、负载均衡模块 3、封装负载均衡器 4、网关模块 5、服务模块 5.1、注册为灰度服务实例 5.2、设置负载均衡器 5.3、传递灰度标签 1、实现框架 Spring Cloud全链路灰色发布实现构架: 灰度发布的具体实现…

【SSM框架】初识Spring

初识Spring Spring家族 Spring发展到今天已经形成了一种开发的生态圈,Spring提供了若千个项目,每个项目用于完成特定的功能 ✅Spring Framework(底层框架)Spring Boot(提高开发速度)Spring Cloud&#xf…

【期末不挂科-C++考前速过系列P5】大二C++实验作业-多态性(3道代码题)【解析,注释】

前言 大家好吖,欢迎来到 YY 滴C考前速过系列 ,热烈欢迎! 本章主要内容面向接触过C的老铁 主要内容含: 欢迎订阅 YY滴C专栏!更多干货持续更新!以下是传送门! YY的《C》专栏YY的《C11》专栏YY的《…

LMDeploy 的量化和部署

LMDeploy 的量化和部署 文档:https://github.com/InternLM/tutorial/blob/vansin-patch-4/lmdeploy/lmdeploy.md 视频:https://www.bilibili.com/video/BV1iW4y1A77P 一、模型量化 大模型参数量很大,运行起来非常消耗显存和内存,…

强化学习应用(八):基于Q-learning的无人机物流路径规划研究(提供Python代码)

一、Q-learning简介 Q-learning是一种强化学习算法,用于解决基于马尔可夫决策过程(MDP)的问题。它通过学习一个价值函数来指导智能体在环境中做出决策,以最大化累积奖励。 Q-learning算法的核心思想是通过不断更新一个称为Q值的…

漏洞复现-金和OA GetAttOut接口SQL注入漏洞(附漏洞检测脚本)

免责声明 文章中涉及的漏洞均已修复,敏感信息均已做打码处理,文章仅做经验分享用途,切勿当真,未授权的攻击属于非法行为!文章中敏感信息均已做多层打马处理。传播、利用本文章所提供的信息而造成的任何直接或者间接的…

使用swift创建第一个ios程序

一、安装xcode 先到app store中下载一个Xcode app 二、创建项目 1、项目设定 创建ios app 2、工程结构 三、修改代码实现按键联动 四、运行测试

Hadoop-HA高可用

一、集群规划 二、HDFS高可用 官方地址 在opt目录下创建一个ha文件夹&#xff0c;将/opt/module/下的 hadoop-3.1.3拷贝到/opt/ha目录下&#xff08;记得删除data 和 log目录&#xff09; 配置core-site.xml hdfs-site.xml <configuration><!-- NameNode数据存…

蓝凌EIS智慧协同平台 多处SQL注入漏洞复现

0x01 产品简介 蓝凌EIS智慧协同平台是一款专为企业提供高效协同办公和团队合作的产品。该平台集成了各种协同工具和功能,旨在提升企业内部沟通、协作和信息共享的效率。 0x02 漏洞概述 由于蓝凌EIS智慧协同平台 doc_fileedit_word.aspx、frm_form_list_main.aspx、frm_butt…

【河海大学论文LaTeX+VSCode全指南】

河海大学论文LaTeXVSCode全指南 前言一、 LaTeX \LaTeX{} LATE​X的安装二、VScode的安装三、VScode的配置四、验证五、优化 前言 LaTeX \LaTeX{} LATE​X在论文写作方面具有传统Word无法比拟的优点&#xff0c;VScode作为一个轻量化的全功能文本编辑器&#xff0c;由于其极强的…

DP读书:《openEuler操作系统》(八)TCP、UDP与跨机器通讯

10min速通TCP与UDP 2024 DP读书计算机网络简介TCP/IP协议栈A. 物理层1.信号及信道传递2.信号调制与调解3.信道的复用 B. 数据链路层1.封装成帧2.透明传输3.差错控制 C. 网络层1.IP2.ARP3.路由选择协议 D. 传输层1.端口号2.3.UDP 2024 DP读书 第八章 跨机器通讯 在第六章之中&a…

Linux配置JAR包为服务实现自启动

一、实现bash脚本 1.1 绘图工具 绘图需安装idea的插件plantUML-Integration 只需要上图一个就可以&#xff0c;别的也不需要装。 启动服务的逻辑如下 关闭服务的逻辑如下 1.2 逻辑实现 在/root路径下创建entrance文件&#xff0c;实现逻辑如下 #!/usr/bin/env bash # 2>…

自动驾驶二维激光雷达标定板

自动驾驶是人类智慧的结晶&#xff0c;它融合了多种高科技技术&#xff0c;包括传感器技术、计算机视觉、人工智能等&#xff0c;它让汽车具备了自主感知和决策的能力&#xff0c;可以在复杂多变的道路环境中自如应对。这种技术带给我们的不仅仅是出行的便利&#xff0c;更是对…

Open3D 反算点云缩放系数(21)

Open3D 反算点云缩放系数(21) 一、算法介绍二、算法实现1.方法12.方法2(通用)一、算法介绍 上一章按照指定的系数,对点云进行了等比例缩放,这里输入缩放后的两块点云,反算二者之间的缩放系数。 二、算法实现 已知使用的俩点云是1/2的缩放关系,用于验证计算结果是否…

JQuery 操作Class滚动轮播展示效果

JQuery 操作Class滚动轮播展示效果 展示效果&#xff1a; 1.html <div class"list"><div class"item"><div class"icon"></div><div class"content">第一行xxxxxxxxx</div></div><div …

NetDevOps:华三交换机通过Netmiko或者Nornir获取接口信息通过TextFSM解析报错问题

python代码&#xff1a;实现功能获取交换机接口信息并通过TextFSM进行解析。 from netmiko import Netmiko import textfsm show_intf_cmd_mapping {hp_comware: display interface, }def ssh_device_2_get_intfs(device_type, host, username, password, port):dev_info {d…

java中多线程

文章目录 多线程进程和线程进程线程 继承Thread类方式实现多线程设置线程名字的两个方式获取正在运行的线程线程调度模型和线程优先级设置两种调度模型优先级设置 线程控制sleepjoin守护线程 线程生命周期 多线程 进程和线程 进程 进程&#xff1a;是正在运行的程序 是系统进…