import sys sys.path.append('.') ##################### 以上两行只是为了方便开发,实际不需要 ####################### import dutsso import getpass from prettytable import PrettyTable u = dutsso.User(input('\n请输入学号:'), getpass.getpass('请输入密码:')) login = u.login() if login: # 查询本科生成绩 # course_type参数:all代表查看所有,bx代表知产看必修,xx代表只查看选修,rx代表只查看任选(不填默认为all)。 # recently参数:True代表只查看本学期(近期)成绩,False代表查看本科阶段所有成绩(不填默认为False)。 scores = u.get_score_bks(course_type="all", recently=True) print("\n————您的本学期成绩信息如下————") x = PrettyTable(["课程名称", "分数", "学分", "课程类型"]) for i in scores: x.add_row([i['c_name'], i['c_value'], i['c_score'], i['c_type']]) print(x)
import sys sys.path.append('.') ##################### 以上两行只是为了方便开发,实际不需要 ####################### import getpass import dutsso # 创建User对象(方法一) username = input('\n请输入学号:') password = getpass.getpass('请输入密码:') u = dutsso.User(username, password) # 创建User对象(方法二) # u = dutsso.User() # u.username = input('\n请输入学号:') # u.password = getpass.getpass('请输入密码:') # 登录 login = u.login() if login: print("%s(%s)登录成功!" % (u.name, u.type)) else: print("用户名密码错误!") # 检测登录状态 if u.isactive(): print("当前处于登录状态") else: print("登录状态失效") # 退出登录
for i in all_list: content += "<p>%s</p>" % i['c_name'] else: subject = "课程《%s》选课成功!" % course['c_name'] content = "<p>%s您好,已为您选择一门课程:</p>" % u.name content += course['c_name'] content += "<hr /><p>我的Github主页:<a href='https://github.com/yuanyuanzijin'>https://github.com/yuanyuanzijin</a></p><p>Powered by Zijin</p>" back = zmail.send(config, u.emailaddr, content, subject) return back print('\n********** 欢迎使用大连理工大学研究生选课系统 **********') print('******************** Powered by Zijin ********************') u = dutsso.User() success = 0 while 1: u.username = input('\n请输入学号:') u.password = getpass.getpass('请输入密码:') u.emailaddr = input('请输入提醒邮箱(为空则表示不提醒):') login = u.login() if not login: print("用户名密码错误!") else: print("%s(%s)登录成功!" % (u.name, u.type)) break course_list = u.get_course_not_choosed()
import sys sys.path.append('.') ##################### 以上两行只是为了方便开发,实际不需要 ####################### import getpass import dutsso username = input("请输入学号:") password = getpass.getpass("请输入密码:") u = dutsso.User(username=username, password=password) login = u.login(try_cookies=False) if not login: print("用户名或密码错误!") exit(-1) print("明文方式登录成功!") # 获取密文密码 encrypted_password = u.get_encrypted_password() if encrypted_password: print("\n密文密码为:" + encrypted_password) print("再登录时可以使用该encrypted_password参数代替password参数,只要原密码不改变,该值是不变的。") print("在使用数据库储存账号密码时,请使用该值代替密码,尽管它也可以被解密还原,但至少比直接保存明文密码安全一些。") else: print("登录失败!") # 退出登录 u.logout() print("\n已退出登录!下面进行密文登录演示:") # 创建新对象进行密文密码登录演示
content += '*****共找到%d条选修课成绩' % len(scores["xx"]) for i in scores["xx"].keys(): line = "<p>" + i + " " + scores["xx"][i] + "</p>" content += line content += "<hr /><p>我的Github主页:<a href='https://github.com/yuanyuanzijin'>https://github.com/yuanyuanzijin</a></p><p>Powered by Zijin</p>" back = zmail.send(config, obj.emailaddr, content, subject) obj.first_use = 0 return back print('\n********** 欢迎使用大连理工大学研究生成绩自助查询系统 **********') print('*********************** Powered by Zijin ***********************') u_len = int(input("请输入同时检测的人数:")) u = {} for i in range(u_len): u['u'+str(i)] = dutsso.User() u['u'+str(i)].old_num = 0 u['u'+str(i)].first_use = 1 while 1: u['u'+str(i)].username = input('\n请输入第%d个用户的学号:' % (i+1)) u['u'+str(i)].password = getpass.getpass('请输入第%d个的用户密码:' % (i+1)) u['u'+str(i)].emailaddr = input("请输入第%d个用户的提醒邮箱:" % (i+1)) # SSO登录 login = u['u'+str(i)].login() if login: print(u['u'+str(i)].name + "登录成功!") break else: print("第%d个用户用户名密码错误!" % i)
"请检查配置文件的路径!并请确保已将项目中的single_user_config.ini.example重命名为single_user_config.ini" ) c = configparser.ConfigParser() try: with open(config_path) as f: c.readfp(f) username = c.get('user', 'username') encrypted_password = c.get('user', 'encrypted_password') password_length = c.get('user', 'password_length') except: print("single_user_config.ini配置文件格式有误,请检查重试!") exit(-1) u = dutsso.User(username=username, encrypted_password=encrypted_password, password_length=password_length) login = u.login(show_info=False) if not login: print("登录失败!") exit(-1) bath = u.get_bathroom() data_bs0 = bath['bs0']['use'] data_bs1 = bath['bs1']['use'] data_xs0 = bath['xs0']['use'] data_xs1 = bath['xs1']['use'] db_path = os.path.join(sys.path[0], "bathroom.db") conn = sqlite3.connect(db_path) cursor = conn.cursor()