Skip to main content

豫见郑大的 Python API 封装 / An API wrapper for Zhengzhou University Mobile Campus written in Python.

Project description

ZZU.Py

豫见郑大的 Python API 封装

概述

ZZU.Py 是一个为郑州大学各个线上系统和相关服务提供 Python API 封装的库。它提供了简洁易用的接口来访问校园各类服务,包括移动应用 API、校园网络认证、一卡通服务等。

[!WARNING]
研究生教务系统暂未适配

特性

  • 统一认证系统 (CAS) - 支持账密登录和 Token 认证
  • 智慧教务系统 - 获取课表、查询空教室
  • 校园网络服务 - Portal 认证、设备管理、流量查询
  • 校园卡服务 - 余额查询、电费充值
  • 类型安全 - 基于 Pydantic 的数据模型验证
  • 异步支持 - 基于 httpx 的高性能网络请求

快速开始

安装

pip install zzupy --upgrade

基础使用

from zzupy.app import CASClient, SupwisdomClient

# CAS 认证
cas = CASClient("Your account", "Your password")
cas.login()

with SupwisdomClient(cas) as client:
    # 获取本周课表
    week_courses = client.get_week_courses()
    print(week_courses)

核心模块

app - 移动应用 API 抽象层

提供基于移动端逆向的 API 封装:

  • auth: CAS 统一认证系统客户端
  • supwisdom: 智慧教务系统,支持课表查询、空教室查询
  • ecard: 校园卡服务,支持余额查询、电费充值
  • interfaces: 定义统一的客户端接口规范

web - Web API 客户端模块

提供基于 Web 端逆向的 API 封装:

  • network: 校园网络服务,包含 Portal 认证和设备管理

aio - 各模块的异步实现

提供以上模块的异步实现

开发指南

环境要求

  • Python >= 3.13
  • 依赖管理:使用 uv

贡献代码

欢迎提交 Issue 和 Pull Request。在贡献代码前,请确保:

  1. 代码符合项目风格规范
  2. 添加必要的类型注解
  3. 编写相应的文档字符串
  4. 测试通过

许可证

本项目使用 MIT 许可证。详见 LICENSE 文件。

相关链接

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

zzupy-6.0.0rc4.tar.gz (64.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

zzupy-6.0.0rc4-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

Details for the file zzupy-6.0.0rc4.tar.gz.

File metadata

  • Download URL: zzupy-6.0.0rc4.tar.gz
  • Upload date:
  • Size: 64.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.19

File hashes

Hashes for zzupy-6.0.0rc4.tar.gz
Algorithm Hash digest
SHA256 c34b451c63e3b76c3e46ad9a8a9ca4f3fbc4d03f3a40bba20882237dcc59e6a8
MD5 0d2503d9056c9529ca1682ad72923a6e
BLAKE2b-256 fd82ab3c3a46f7594790ff24ecf8be76190b049fc26ad3b7258a701d2eb8821d

See more details on using hashes here.

File details

Details for the file zzupy-6.0.0rc4-py3-none-any.whl.

File metadata

  • Download URL: zzupy-6.0.0rc4-py3-none-any.whl
  • Upload date:
  • Size: 40.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.19

File hashes

Hashes for zzupy-6.0.0rc4-py3-none-any.whl
Algorithm Hash digest
SHA256 b2e28ddc918dfc04b9bd36cb764931af7187166ce9e7c134b4a6f31f69b330e4
MD5 05ab121735701bac16f18343216207bf
BLAKE2b-256 69022137b93b446649a7b92d51b6b0f252c863035536ad96195bf98e357c939c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page