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.0rc3.tar.gz (64.2 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.0rc3-py3-none-any.whl (40.0 kB view details)

Uploaded Python 3

File details

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

File metadata

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

File hashes

Hashes for zzupy-6.0.0rc3.tar.gz
Algorithm Hash digest
SHA256 10270cc4a0db351596c142836ea849594cb7f23628542270fe9e8998138be68e
MD5 fa59d710dd930d49a04c1133bee3f7d7
BLAKE2b-256 d5879de1e893c8992e62eedaf591079e6516d50adc2ca5feffbe44d81d9b9519

See more details on using hashes here.

File details

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

File metadata

  • Download URL: zzupy-6.0.0rc3-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.0rc3-py3-none-any.whl
Algorithm Hash digest
SHA256 6483cb930d5b0cf72f05e893664534a2648df27487e7424b7019bc9e8bfbde32
MD5 49b2a00c606e1de2fe263524e88b31c4
BLAKE2b-256 f89d9ed4cfbc80374255b6296544a1da56c5153bd8097009bac86bc3258f6601

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