Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

9 Commits
 
 
 
 
 
 

Repository files navigation

GPA Calculator IMU (版本 v3.7)

本项目是一个用于计算学分绩点(GPA)的应用程序,通过从教务系统抓取成绩信息并计算相应的绩点。支持手动输入成绩和学分,自动计算GPA,并可导出日志。支持读取本地课程配置文件,也可以直接爬取成绩信息。

目前只针对IMU的教务系统进行更新和使用。测试时间详见release界面。理论上适用于同源的教务系统。

特性

  • 从本地配置文件读取课程信息
  • 自动计算每门课程的绩点(支持设置为使用直接绩点)
  • 爬取成绩信息并自动填写课程信息
  • 支持成绩和绩点的手动修改,并即时更新GPA
  • 可导出计算的GPA及课程日志
  • 支持图形界面(PyQt5)

下载与安装

1. 下载Release版本

前往Release页面下载最新的发布版本(AyeeGPACalc3.7-4.3.exe)。解压缩后,您将获得以下内容:

  • AyeeGPACalc3.7-4.3.exe - 主程序
  • courses.txt - 本地缓存课程配置文件
  • credentials.txt - 存储用户名和密码的文件(用于爬取成绩)
  • GPACalc4.4.py - 主程序的脚本版本
  • ignore_words.txt - 忽略词配置文件
  • msedgedriver.exe - Microsoft Edge WebDriver,用于爬取成绩的浏览器驱动

2. 安装依赖

若要运行脚本版本, 您需要安装以下依赖项才能运行程序:

  • Python 3.6 及以上版本
  • PyQt5:pip install PyQt5
  • selenium:pip install selenium
  • ddddocr:pip install ddddocr
  • Microsoft Edge WebDriver:下载并将msedgedriver.exe放置在与GPACalc4.4.py相同的目录中

3. 配置文件

在运行程序之前,请确保您已准备好以下配置文件:

  • credentials.txt:请在文件中输入您的教务系统用户名和密码(每行一个)。如果文件不存在,程序会报错。
  • courses.txt:课程配置文件,包含每门课程的名称、学分、成绩和绩点。您可以手动编辑此文件,或使用爬取功能自动生成。
  • ignore_words.txt:包含需要忽略的关键字,格式为每行一个关键词。

4. 启动程序

使用图形界面启动

  1. 在解压缩后的文件夹中,找到并运行AyeeGPACalc3.7-4.3.exe,程序将会启动图形界面。
  2. 在界面中,您可以选择以下操作:
    • 从本地配置读入:加载courses.txt文件中的课程数据。
    • 爬取到本地:通过教务系统自动爬取成绩信息并保存至courses.txt
    • 刷新:重新计算并更新GPA。
    • 导出到日志:将当前的GPA和课程数据导出到日志文件。
    • 使用绩点:切换为使用直接绩点模式计算GPA。
    • 添加课程/删除/编辑课程:在表格中手动添加、编辑或删除课程。

爬取成绩

  1. 点击爬取到本地按钮,程序会要求您输入用户名和密码,之后自动爬取成绩并保存至courses.txt
  2. 如果爬取过程中出现验证码,程序会使用OCR技术自动识别并输入验证码。

5. 使用说明

  • 修改成绩或绩点:在表格中直接编辑成绩或绩点,程序会自动更新相关字段并重新计算GPA。
  • 导出日志:点击导出到日志按钮,将当前GPA和课程信息保存到一个日志文件中,文件名为当前时间戳。

6. 注意事项

  • 确保您的msedgedriver.exe与您的Microsoft Edge版本兼容,若遇到驱动问题,请下载最新版本的WebDriver。
  • 爬取成绩时,程序可能会遇到验证码识别失败的情况,您可以调整MAX_REFRESH_TIMES设置以增加重试次数。
  • 为保证程序正常运行,请使用Python 3.6及以上版本,并安装所有必要的依赖项。

7. 常见问题

Q1: 报错或弹窗"无法启动程序自带驱动浏览器"或者"无法启动Edge WebDriver"

问题原因:

  1. 您的本地 Microsoft Edge 浏览器版本和程序自带的 msedgedriver.exe 驱动版本不匹配。
  2. msedgedriver.exe 文件缺失或未正确放置。

解决方法:

  1. 确保Edge和EdgeDriver版本一致:

    • 请参考 EdgeDriver下载页面 更新您的 msedgedriver.exe,确保它与本地的 Microsoft Edge 浏览器版本一致。
    • 将更新后的 msedgedriver.exe 文件替换项目文件夹中的旧版本。
  2. 检查文件路径:

    • 确保 msedgedriver.exe 文件位于程序的根目录中。如果文件不在正确位置,程序可能无法找到它。
  3. 更新浏览器:

    • 若你安装的是最新版本的EdgeDriver,请更新你的Edge。通过“设置”中的“帮助和反馈” -> “关于Microsoft Edge”来检查更新。
    • 如果您已经安装了最新版本的 Microsoft Edge,但问题依然存在,尝试重新安装浏览器,或者通过“设置”中的“帮助和反馈” -> “关于Microsoft Edge”来检查更新。
  4. 重新启动计算机:

    • 有时,浏览器或驱动程序更新后需要重新启动计算机才能生效。请尝试重新启动计算机,并重新运行程序。

如果以上方法都无法解决问题,请尝试运行原python脚本,即 GPACalc4.4.py。或访问项目的 GitHub 页面提问获取更多支持。

Q2: 如何修改课程成绩和学分?

您可以在表格中手动修改课程的成绩和学分。修改后,程序会自动计算对应的绩点,并更新GPA。

Q3: 如何爬取成绩?

点击爬取到本地按钮,根据配置文件中您的教务系统用户名和密码,程序将自动爬取您的成绩信息并保存到courses.txt

Q4: 如何导出计算结果?

点击导出到日志按钮,程序会将当前GPA、总学分以及所有课程的详细信息导出到一个日志文件中。

许可协议

本项目使用AGPL-3.0许可协议,详情请参阅LICENSE文件。

About

计算GPA的自动爬虫和统计程序,设计上仅适用于IMU

Resources

Stars

Watchers

Forks

Releases

Packages

Contributors

Languages