校园网网页认证自动登录

校园网网页认证自动登录校园网网页认证自动登录认证 python 定时任务实现校园网自动登录认证一 总览二 具体步骤 python 定时任务实现校园网自动登录认证说明 因为我们学校校园网登陆需要网页认证 且每天 3 点左右会自动断网 所以需要设置定时任务 每天在断网后自动进行网络认证登录 可能每个学校的断网时间和联网需求不同 需要在定时任务阶段设置不同的策略 比如每小时登录一次 一 总览使用 Chrome 或者其他

python+定时任务 实现校园网自动登录

说明:因为我们学校校园网登陆需要网页认证,且每天3点左右会自动断网,所以需要设置定时任务,每天在断网后自动进行网络认证登录, 可能每个学校的断网时间和联网需求不同,需要在定时任务阶段设置不同的策略,比如每小时登录一次。 

一、总览

  1. 使用Chrome或者其他浏览器查看校园网认证所需要的request HeadersForm Data
  2. 安装python环境,并将python加入系统环境变量,使用python编写发送http请求的处理流程;
  3. 在windows系统下需要编写bat脚本文件执行步骤2的python文件,并启动定时任务。linux请自行系统百度定时任务的设置方法;
  4. 如果windows系统需要锁屏状态写可以运行计划任务,则需要进行以下操作:查看 Task Scheduler 服务是否启动.没有启动它。.如果还不行的话在运行中,输入gpedit.msc选择 计算机配置 – windows设置 – 安全设置 – 本地策略 – 安全选项找到 “账户:使用空白密码的本地账户只允许进行控制台登录” 这个项目. 双击打开.把它设置为 “已禁用”.

二、具体步骤

  1. 使用Chrome浏览器进入网络认证界面,按F12,弹出监控台,点击Network,在页面上输入账户名和密码,点击登录或认证按钮,network会有记录。如下图为我们学校的登录界面。需要关注红色圈住的部分。认证界面
  2. 安装python环境,并将python加入系统环境变量,使用python编写程序发送http请求,代码及说明如下:
 #!/usr/bin/python3 # -*- coding: utf-8 -*- import base64 import requests #此处根据自己校园网Form Data中发送的数据进行更改 action = 'login' username = '用户名' password = '密码' ac_id = '1' user_ip = '127.131.1.1' # 登录地址 post_addr = "http://wlrz.fudan.edu.cn/srun_portal_pc.php?ac_id=1&phone=1" # 构造头部信息 注意Cookie可能十分重要,而且Cookie会有过期时间(我们学校过期时间是1个月),过期之后,可能需要复制新的Cookie替换。 post_header = { 
    'User-Agent': 'Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/69.0.3497.100 Safari/537.36', 'Accept': '*/*', 'Accept-Language': 'zh-CN,zh;q=0.8,en-US;q=0.5,en;q=0.3', 'Accept-Encoding': 'gzip, deflate', 'Content-Type': 'application/x-www-form-urlencoded', 'X-Requested-With': 'XMLHttpRequest', 'Origin': 'http://wlrz.fudan.edu.cn', 'Referer': 'http://wlrz.fudan.edu.cn/srun_portal_pc.php?ac_id=1&&phone=1', 'Content-Length': '112', 'Cookie': 'login=YUtl4F5w2GWDfWUA8O0MDW7tX1eoOzS00eusx19E0245ORqeeZHVwBzEd1DGI%253D', 'Host': 'wlrz.fudan.edu.cn', 'Connection': 'keep-alive', } post_data = { 
    'action': action, 'username': username, 'password': password, 'ac_id': ac_id, 'user_ip': user_ip } # 发送post请求登录网页 z = requests.post(post_addr, data=post_data, headers=post_header) # s = z.text.encode('utf8') # print(s) print("login success!") 
  1. 在windows系统下需要编写bat脚本文件(login.bat)执行步骤2的python文件,并启动定时任务。脚本如下:
python E:\autoLogin\autoLogin.py 

定时任务开启方式参考链接 https://blog.csdn.net/cdnight/article/details/

本文参考链接:https://blog.csdn.net/shenhuaifeng/article/details/

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/222384.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月17日 下午3:53
下一篇 2026年3月17日 下午3:54


相关推荐

  • mysql中exists的用法详解[通俗易懂]

    mysql中exists的用法详解[通俗易懂]前言在日常开发中,用mysql进行查询的时候,有一个比较少见的关键词exists,我们今天来学习了解一下这个exists这个sql关键词的用法,这样在工作中遇到一些特定的业务场景就可以有更加多样化的解决方案语法解释语法SELECTcolumn1FROMt1WHERE[conditions]andEXISTS(SELECT*FROMt2);说明括号中的子查询并不会返回具体的查询到的数据,只是会返回true或者false,如果外层sql的字段在子查询中存在则返回true,

    2025年8月12日
    4
  • goland 激活码4月【在线注册码/序列号/破解码】「建议收藏」

    goland 激活码4月【在线注册码/序列号/破解码】,https://javaforall.net/100143.html。详细ieda激活码不妨到全栈程序员必看教程网一起来了解一下吧!

    2022年3月18日
    45
  • generic host process for win32_hostunreachable怎么解决

    generic host process for win32_hostunreachable怎么解决本人使用的windows2003sp1英文版。昨天开始总是莫明其妙出现GenericHostProcess进程出错提示框,紧跟着svchost内存出错提示框, 之后一些service就停止工作,比如WindowsAudio,必须手动重启才能听音乐;网络连接假死,tcp连接需要重连,不胜其扰。上网搜了些文章,基本上分为三个原因:1,木马病毒。2,系统漏洞。3,硬件驱动问题

    2022年10月10日
    6
  • AI自动化时代,如何用Coze(扣子)工作流为自己打工?

    AI自动化时代,如何用Coze(扣子)工作流为自己打工?

    2026年3月12日
    2
  • apt查找软件包_apt download

    apt查找软件包_apt downloadaptitudeshowvsftpd查询vsftpd软件包的所有信息aptitudesearchpkg-pattern模糊检索所需要的软件包aptitudesearch~T查询所有的软件包aptitudesearch~U列出软件仓库中可供更新的软件包aptitudesearch~i列出系统中已经安装的软件包…

    2025年7月16日
    5
  • 编写自己的who命令

    编写自己的who命令
    今天自己照着书一步步敲了who命令的实现。老外写的有些书就是不错,一步步启发你告诉你怎么思考,怎么根据已有的线索查询联机帮助,怎么一步步最终解决问题。真不错。
    下面我就根据书上的思想,来回顾一下这将近2个小时的工作。

    1.who命令能

    2022年6月11日
    33

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号