广州某学院校园网自动登录脚本

RT,刚到学校几天,闲来无事研究了一下校园网登录系统,发现登录系统出奇的简单,只是在URL里携带了用户名和密码(没错明文的),然后GET。。。。因此写了如下简单的Python脚本,可以作为参考,这里隐去了地址,具体详细可根据自己情况进行改进,这里仅作为参考!

功能很简单,检测到网络正常,就退出,检查到网络断开,就执行登录。启动参数-u和-p分别为用户名和密码。

我是将它用pyinstaller打包,然后在计划任务中运行,就可以了。

import requests
import urllib
import argparse
import time

ct: int = 0
error: bool = False


def NetworkLogin(username, password):
    global ct, error
    t = time.time()
    unixtime: str = str(round(t * 1000))
    url ='http://<你学校的登陆地址>/drcom/login?callback=dr' + unixtime + '&DDDDD=' + username + '&upass=' + password + '&0MKKey=123456&R1=0&R3=1&R6=0&para=00&v6ip=&_=' + unixtime
    if not error:
        if ct != 0:
            print("发生第" + str(ct) + "次中断!")
        print("========================")
        print("正在链接中...")
    try:
        response = requests.get(url).status_code
    except:
        print("发生未知错误,将继续尝试。")
        error = True
    else:
        print("成功发送登录命令!")
        ct = ct + 1
        error = False
    if not error:
        print("========================")


def NetworkCheck():
    try:
        status = urllib.request.urlopen("https://www.baidu.com").code
        return False
    except Exception as err:
        return True


def loop_monitor():
    while True:
        if NetworkCheck():
            NetworkLogin(args.username, args.password)
        time.sleep(1)


parser = argparse.ArgumentParser(description='使用说明')
parser.add_argument('--username', '-u', help='用户名,必要参数', required=True)
parser.add_argument('--password', '-p', help='密码,必要参数', required=True)
args = parser.parse_args()
print("程序已启动,正在监控网络状态!")
loop_monitor()

下方为内部使用的,已经打包好的exe文件。

Restricted Content
To view this protected content, enter the password below:

浏阳河

...

1 回复

  1. 妙哉居士说道:

    我直接好家什

回复 妙哉居士 取消回复

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