oucjwparser

command module
v0.0.0-...-a336665 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jun 20, 2020 License: MIT Imports: 2 Imported by: 0

README

oucjwparser

一个为方便获取教务系统信息的小工具,需要连接学校VPN或者连接校园网使用。

登录教务系统
// 创建新的教务系统会话
session := jwmodel.NewSession()
// 输入教务系统账号密码,返回bool,error
success, err := session.Login("学号", "密码")
if err != nil {
  // 打印错误
  fmt.Println(err.Error())
  return
}
if success {
  fmt.Println("登录成功")
}
获取个人专业、年级信息
// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 获取信息
  student, err := session.GetInfo()
  if err != nil{
    fmt.Printf(err.Error())
    return
  }
  // 打印个人的专业、年级信息
  fmt.Printf(student.Specialty, student.Grade)
}
获取指定年级的专业列表
// 获取2019年的所有专业
specialties, err := jwmodel.GetSpecialties(2019)
if err != nil {
  // 打印错误
  fmt.Println(err.Error())
  return
}
// 打印专业
fmt.Println(specialties)
获取指定学年学期的学生课表
// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 获取课表
  stuCourses, err := session.GetStuCourse(2019, 2)
  if err != nil {
    // 处理错误
    fmt.Println(err.Error())
    return
  }
  // 打印课表
  fmt.Println(stuCourses)
}
指定学年学期的学生二维html课表
// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 获取二维形式课表
  stuCourses, err := session.GetHtmlStuCourse(2019, 2)
  if err != nil {
    // 处理错误
    fmt.Println(err.Error())
    return
  }
  // 打印二维html课表
  fmt.Println(stuCourses)
}
获取指定学年学期的选课币
// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 获取选课币状态
  coinStatus, err := session.GetCoinStatus(2019, 2)
  // 处理错误
  if err != nil {
    fmt.Println(err.Error())
    return
  }
  // 打印选课币
  fmt.Println(coinStatus)
}

查看是否可以重修某一门课
// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 课程代码是12位数字,一般出现在课程名前面,非选课号
  retake, err := session.CanRetake("课程代码")
  if err != nil {
    fmt.Println(err.Error())
    return
  }
  fmt.Println(retake)
}
获取教务系统加密参数

部分请求需要加密参数,例如获取成绩、选课

// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 获取加密参数
  keyParam, err := session.GetKeyParam()
  if err != nil {
    fmt.Println(err.Error())
    return
  }
  // 打印加密参数x
  fmt.Println(keyParam)
}
获取个人成绩
// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 获取成绩
  scoreList, err := session.GetScores()
  if err != nil {
    fmt.Println(err)
    return
  }
  fmt.Println(scoreList)
}
获取各个模块要求学分
// 创建会话
session := jwmodel.NewSession()
// 登录
if success, _ := session.Login("学号", "密码"); success {
  // 获取模块学分
	creditList, err := session.GetCreditRequire()
  if err != nil {
  	fmt.Println(err)
  	return
  }
  fmt.Println(creditList)
}
验证码识别模块

验证码识别模块使用了第三方接口:

Method: POST 
URL: https://itstudio.club/ocr/jw
body: image=<验证码图片文件>

Documentation

The Go Gopher

There is no documentation for this package.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL