1. 本校同学使用请直接看附件文件,包含.py文件和打包好的exe文件,以及录制好的视频教程,直接配置使用即可。
  2. 其它学校的同学请参考一下这个网址,需要对文件中的.py的data和header进行小幅改动后重新打包。
    我当时参考的,请点击,感谢这位同学的分享!
  3. 打包好的exe文件请按照视频进行本地激活配置。
  4. 文件在哪里?见评论区。
  5. 代码直接共享在这里了,有需要的同学自取
import subprocess
import requests
import schedule
import datetime
import time
import configparser
import os
import sys
from subprocess import run, PIPE
import smtplib
from email.mime.text import MIMETextos.environ['REQUESTS_CA_BUNDLE'] = os.path.join(os.path.dirname(sys.argv[0]), 'cacert.pem')def vrgis_login(data, header):# 中国海洋大学校园网urlurl = 'https://yxrz.ouc.edu.cn/a79.htm'# 判断当前网络是否连接isConnet = os.system('ping www.baidu.com')f = open('联网日志.txt', 'a+')f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' >>>baidu? Hello???\n')if isConnet:f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 当前网络状态异常!等待重新连接!\n')try:# 获取状态码response = requests.post(url, data, headers=header).status_code# 打印状态码print("回应代码为:{}".format(response))if response == 200:f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 连接请求已发送!返回码为:{},重新测试网络状态\n'.format(response))f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' >>>baidu? Hello???\n')isConnet = os.system('ping www.baidu.com')if not isConnet:f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' <<<' + data['DDDDD'] + ',Hello!\n')f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 连接成功!程序继续监测,有异常自动恢复网络!\n')else:f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 连接失败!账号密码错误或服务器错误,半小时后重新进行连接测试!\n')else:f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 连接请求发送失败!返回码为:{}\n'.format(response))send_email(mail_info)except:f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 网络电缆可能没有插好\n')else:f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' <<<' + data['DDDDD'] + ',Hello!\n')f.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 当前网络环境测试正常!程序继续监测,如有异常自动恢复网络!\n')f.close()def func():vrgis_login(data, header)def send_email(mail_info):# 设置email信息# 邮件内容设置message = MIMEText(data['DDDDD'] + ',您好!\n程序激活成功或当前网络状态异常,正在恢复连接...请稍后关注网络状态。注意:1、''电脑或程序异常重启都会导致程序激活;2、程序运行时,每30min会进行一次连接测试!连接日志默认存储于本地文件(''联网日志.txt)中。\n祝好','plain', 'utf-8')# 邮件主题message['Subject'] = '校园网连接日志'# 发送方信息message['From'] = email_username# 接受方信息message['To'] = mail_info['email_receivers']mail_host = 'smtp.163.com'mail_sender = mail_info['email_username']mail_receivers = mail_info['email_receivers']file = open('联网日志.txt', 'a+')# 登录并发送邮件try:smtpObj = smtplib.SMTP()# 连接到服务器smtpObj.connect(mail_host, 25)# 登录到服务器smtpObj.login(mail_info['email_username'], mail_info['email_password'])# 发送smtpObj.sendmail(mail_sender, mail_receivers, message.as_string())# 退出smtpObj.quit()file.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 成功发送邮件!\n')except:file.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 发送邮件失败!\n')file.close()if __name__ == '__main__':# 创建连接日志并提示激活成功file = open('联网日志.txt', 'a+')file.write('\n' + datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 程序启动成功:程序运行时,每30min将进行一次自动连接测试!连接日志默认存储于本文件中\n')file.close()data = {# 用户名"DDDDD": '******',# 密码"upass": '******',# data数据"R1": "0","R3": "1","R6": "0","pare": "00","OMKKey": "123456",}# 从浏览器中复制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, br","Accept-Language": "zh-CN,zh;q=0.9","Cache-Control": "max-age=0","Cookie": "*****","Host": "yxrz.ouc.edu.cn","Referer": "https://yxrz.ouc.edu.cn/","sec-ch-ua": "'Not;A Brand';v='99', 'Google Chrome';v='97', 'Chromium';v='97'","sec-ch-ua-mobile": "?0","sec-ch-ua-platform": "Windows","Sec-Fetch-Dest": "document","Sec-Fetch-Mode": "navigate","Sec-Fetch-Site": "same-origin","Sec-Fetch-User": "?1","Upgrade-Insecure-Requests": "1","User-Agent": "Mozilla/5.0 (Windows NT 10.0; WOW64) AppleWebKit/537.36 (KHTML, like Gecko) ""Chrome/97.0.4692.20 Safari/537.36",}mail_info = {"email_username": "****","email_password": "****","email_receivers": "****","mail_host": "****",}# 读取身份信息,加载用户名和密码config = configparser.ConfigParser()path1 = os.path.abspath('.')config.read(path1 + r'\上网登录账号及密码.cfg')username = config.get('user', 'username')password = config.get('user', 'password')cookie = config.get("computer_info", "cookie")# 读取接收email地址及发送信息mail_info['mail_host'] = 'smtp.163.com'email_username = 'network_plc@163.com'email_password = 'OENIUQMOYGFOEKLY'email_receivers = config.get('email', 'receivers')data['DDDDD'] = usernamedata['upass'] = passwordheader['Cookie'] = cookiemail_info['email_username'] = email_usernamemail_info['email_password'] = email_passwordmail_info['email_receivers'] = email_receivers# 读取成功后写入信息file = open('联网日志.txt', 'a+')file.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 读取身份信息成功,等待第一次连接\n')file.close()file = open('联网日志.txt', 'a+')try:# 程序运行时进行首次连接func()send_email(mail_info)except:file.write(datetime.datetime.now().strftime("%Y-%m-%d %H:%M:%S") + ' 网络电缆可能没有插好\n')file.close()# 制定30分钟间隔运行计划schedule.every(30).minutes.do(func)# schedule.every(10).seconds.do(func)# 计划开始while True:schedule.run_pending()time.sleep(1)
'''

中国海洋大学校园网自动连接软件(其它学校可参考,小幅改动)相关推荐

  1. 1.1.1.1校园网_还担心断网?快试试清华校园网自动连接程序

    作为一名热爱科ban研zhuan的博士生,当我放假回家的时候,最挂念的就是实验室电脑上的文件和程序.在校外无法通过mstsc使用IP直连,只能通过第三方远程连接软件诸如Teamviewer.向日葵等来 ...

  2. 手把手教你python实现校园网自动连接,零基础也可以轻松实现

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 目录 前言 一.准备工具 二.具体步骤 1.创建项目和安装request库 a.创建项目 b.安装request库 2.编写程序 a. ...

  3. 解决清华大学校园网自动连接问题

    面向问题: 当学校放假或长时间离开实验的时候,需要远程控制台式机或服务器(对于远程操作,推荐使用Microsoft Remote Desktop).但是因为清华大学校园网非常靠谱,一段时间没有操作或者 ...

  4. selenium 校园网自动连接

    由于实验室电脑连接的校园网总是隔一段时间不操作后就自动断网,所以使用webdriver来实现自动登录的操作. 首先,对于选择的浏览器需要用相应的驱动才能实现对其操作,比如我使用的Chrome,就下载相 ...

  5. 市场调研报告-全球与中国自动结账软件市场现状及未来发展趋势

    报告摘要 本文研究全球及中国市场自动结账软件现状及未来发展趋势,侧重分析全球及中国市场的主要企业,同时对比北美.欧洲.日本.中国.东南亚.印度等地区的现状及未来发展趋势. 2019年全球自动结账软件市 ...

  6. 湖北工业大学校园网自动认证功能

    湖北工业大学校园网自动认证功能 测试学校:湖北工业大学 校园网 Srun 深澜认证登录 支持的深澜认证的版本 V1.18 B20190830 V1.18 B20210607 V1.18 B202109 ...

  7. [Python]校园网(网页认证)开机/断网自动连接

    目录 简介 环境配置 实现过程 分析校园网登录页面,获取URL 编写代码 运行程序 打包程序 使用说明 配置账号密码 设置开机启动 测试 简介 针对网页认证方式的校园网,实现登录的自动化.苦于校园网断 ...

  8. 江西理工大学校园网开机自动连接,断网自动重连

    一.打开网页,但是先不登录 二.F12打开开发者工具,点击网络,勾选保留日志(防止日志丢失) 三.登录账号,观察连接后日志的变化 根据user_account及password的值可知,这是我们登录的 ...

  9. Linux 服务器自动连接校园网,selenium + geckodriver + firefox浏览器

    文章目录 设备信息 一. 下载安装 firefox 浏览器相关驱动 1. firefox 浏览器版本查看 2. 下载对应版本的 selenium 和 geckodriver 驱动 二. 自动连接脚本 ...

最新文章

  1. directx修复工具win7_教你安装双系统,win7+win10
  2. java怎么更改目标文件夹_java – IntelliJ无法同步目标文件夹中的更改
  3. 安卓手机管理器_@你,请查收这款最强的安卓文件管理器
  4. FZU1969(最大公约数之和)
  5. singer页左侧滚动的时候右侧跟随高亮显示
  6. android旋转缩放布局,Android学习笔记(一):双指缩放及旋转计算
  7. 技术驱动创新,阿里云开启云网络3.0时代
  8. 神秘的 shadow-dom 浅析
  9. masscan端口扫描
  10. 现代软件工程学期总结
  11. php word目录,word如何生成目录和页码
  12. 3DMAX场景渲染失败怎么办?
  13. 怎么在搜索计算机学报的论文,计算机学报方面论文题目 计算机学报论文标题如何定...
  14. PTA:特立独行的幸福
  15. 机器学习笔记之基础概念
  16. 道可道,非常道 ---8个做事之“理”
  17. 6.2 漫反射-半兰伯特
  18. 记录微信获取平台证书支付错误 错误的签名,验签失败
  19. 访问者模式-好人打贱人
  20. IBM专家畅谈未来存储十大挑战

热门文章

  1. 企业级负载均衡集群——通过fence设备解决集群节点之间争抢资源的现象(FENCE搭建、高可用服务配置详解)
  2. vue-element-admin项目如何获取并且成功安装依赖
  3. QQ空间触屏版说说模拟评论
  4. 电子元件资料里管脚的active low,active high是什么意思?
  5. MATLAB中调用MEX文件相关的介绍
  6. 2018年计算机网络考研题目
  7. 计算机专硕 华南师范大学,2020年华南师范大学计算机专硕电子信息经验贴(8月底才准备)...
  8. 空调温度远程监测控制系统
  9. maven项目java及pom文件不识别,变黄色
  10. 【Jetson-Nano】jetson_nano安装环境配置及tensorflow和pytorch的安装