Pronotepy 使用指南
pronotepy A python API wrapper for pronote 项目地址: https://gitcode.com/gh_mirrors/pr/pronotepy
项目介绍
Pronotepy 是一个用于访问 PRONOTE 学生管理系统的学生端 Python API 包装器。它主要支持学生账户,同时也有限地支持教师账户的功能。此项目不依赖于 PRONOTE 提供的官方 HYPERPLANNING API(该API对学生不可访问)。Pronotepy 目前处于维护模式,仍会修复错误并适应 PRONOTE 的更新,但不会添加新功能。寻求主动开发的替代品,可考虑使用 Pawnote(基于 JavaScript/TypeScript)。
技术栈与依赖
- pycryptodome
- beautifulsoup4
- requests
- autoslot
快速启动
安装 Pronotepy
确保您已安装 Python 3,然后通过以下命令安装稳定版本:
pip install -U pronotepy
对于最新功能或可能未在 PyPI 上发布的bug修复,直接从仓库安装:
pip install -U git+https://github.com/bain3/pronotepy.git
登录与基本使用示例
首先,使用命令创建登录凭据:
python3 -m pronotepy create_login
之后,在您的脚本中加载这些凭据并初始化客户端:
import pronotepy
import json
from pathlib import Path
# 加载凭据
credentials_path = Path("credentials.json")
credentials = json.loads(credentials_path.read_text())
client = pronotepy.Client(token_login=**credentials)
if client.logged_in:
# 成功登录后的操作
# 更新并保存新的凭证信息(重要)
credentials = client.export_credentials()
credentials_path.write_text(json.dumps(credentials))
# 获取用户名并展示登录状态
username = client.info.name
print(f"已登录为 [{username}]")
# 示例:获取并打印成绩
for period in client.periods:
for grade in period.grades:
print(f"[{grade.grade}/{grade.out_of}]")
应用案例与最佳实践
利用 Pronotepy,您可以自动化处理与 PRONOTE 系统相关的日常任务,如自动检查作业、成绩监控等。最佳实践包括:
- 封装逻辑到函数或类中,以提高代码重用性和可测试性。
- 定期检查凭据有效性,避免因过期导致的中断。
- 使用环境变量管理敏感信息(如登录凭据),而非硬编码在文件内。
- 异常处理,确保程序健壮性,妥善处理网络异常、登录失败等情况。
典型生态项目
虽然 Pronotepy 主要作为独立库使用,但在教育技术领域,它可以集成到更大的生态系统中,如学习管理系统(LMS),用于同步成绩、提醒功能的应用开发,或者数据分析工具,帮助家长和学生更好地跟踪学业进度。开发者可以探索将 Pronotepy 功能嵌入到自定义的家庭作业提醒机器人、个人学业分析软件等应用中,提升学习管理效率。
以上就是 Pronotepy 的基础使用指南,希望它能够帮助您快速上手这个强大的工具,并在教育管理和自动化方面发挥其潜力。在深入开发过程中,请参考官方文档或社区资源,以获得更详细的信息和技术支持。
pronotepy A python API wrapper for pronote 项目地址: https://gitcode.com/gh_mirrors/pr/pronotepy