补全9月11日至13日课评:为13名学生创建请假文档,为5个班级创建总结文档

This commit is contained in:
chengzi
2026-09-13 19:34:34 +08:00
parent 167d832353
commit 21001eccf5
1322 changed files with 37510 additions and 4136 deletions

View File

@@ -82,13 +82,29 @@ def get_student_oj_data(homework_id: str, student_name: str) -> str:
# 1. 登录OJ
client = httpx.Client(base_url=base_url, follow_redirects=True)
try:
login_resp = client.post('/login', json={'uname': username, 'password': password})
# 先访问登录页面
client.get('/login')
# 使用表单格式登录
form_data = {
'uname': username,
'password': password,
'rememberme': 'on',
'login_submit': '1'
}
login_resp = client.post('/login', data=form_data)
login_resp.raise_for_status()
# 检查登录是否成功
has_sid = any(c.name == "sid" for c in client.cookies.jar)
if not has_sid:
return "❌ 错误:OJ登录失败,请检查用户名密码"
# 检查错误信息
if '密码错误' in login_resp.text or 'password' in login_resp.text.lower():
return "❌ 错误:OJ登录失败 - 密码错误"
elif '不存在' in login_resp.text:
return "❌ 错误:OJ登录失败 - 用户不存在"
else:
return "❌ 错误:OJ登录失败,请检查用户名密码"
except Exception as e:
return f"❌ 错误:OJ登录失败 - {e}"