Skip to main content

厦门大学统一身份认证登录SDK

Reason this release was yanked:

deprecated

Project description

XMULogin

厦门大学统一身份认证登录 SDK

简介

XMULogin 是一个用于厦门大学统一身份认证系统的 Python SDK,提供简单易用的接口来登录以下系统:

  1. 统一身份认证系统
  2. 教务系统
  3. 数字化教学平台 (TronClass)

安装

从 PyPI 安装

pip install xmulogin

从源码安装

git clone https://github.com/yourusername/xmulogin.git
cd xmulogin
pip install -e .

使用方法

基本用法

from xmulogin import xmulogin

# 登录统一身份认证系统 (type=1)
session = xmulogin(type=1, username="your_username", password="your_password")

if session:
    print("登录成功")
    # 使用 session 进行后续操作
    response = session.get("https://ids.xmu.edu.cn/authserver/index.do")
    print(response.status_code)
else:
    print("登录失败")

登录不同系统

from xmulogin import xmulogin

# 1. 登录统一身份认证系统
session1 = xmulogin(type=1, username="your_username", password="your_password")

# 2. 登录教务系统
session2 = xmulogin(type=2, username="your_username", password="your_password")

# 3. 登录数字化教学平台
session3 = xmulogin(type=3, username="your_username", password="your_password")

完整示例

from xmulogin import xmulogin

def main():
    username = "your_username"
    password = "your_password"
    
    # 选择登录类型
    login_type = 1  # 1: 统一身份认证, 2: 教务系统, 3: 数字化教学平台
    
    print(f"正在登录...")
    session = xmulogin(type=login_type, username=username, password=password)
    
    if session:
        print("✓ 登录成功")
        
        # 使用 session 进行后续请求
        if login_type == 1:
            response = session.get("https://ids.xmu.edu.cn/authserver/index.do")
            print(f"统一身份认证系统状态: {response.status_code}")
            
        elif login_type == 2:
            response = session.get("https://jw.xmu.edu.cn/new/index.html")
            print(f"教务系统状态: {response.status_code}")
            
        elif login_type == 3:
            response = session.get("https://lnt.xmu.edu.cn/api/user/info")
            print(f"数字化教学平台状态: {response.status_code}")
    else:
        print("✗ 登录失败")

if __name__ == "__main__":
    main()

API 参考

xmulogin(type, username, password)

厦门大学统一登录接口

参数:

  • type (int): 登录类型
    • 1 - 统一身份认证系统
    • 2 - 教务系统
    • 3 - 数字化教学平台 (TronClass)
  • username (str): 学号或工号
  • password (str): 密码

返回值:

  • 成功: 返回已登录的 requests.Session 对象
  • 失败: 返回 None

异常:

  • ValueError: 当 type 参数不在有效范围 (1-3) 内时抛出

依赖

  • Python >= 3.7
  • requests >= 2.25.0
  • pycryptodome >= 3.10.0

注意事项

  1. 请妥善保管您的账号密码,不要在代码中硬编码或提交到版本控制系统
  2. 建议使用环境变量或配置文件来存储敏感信息
  3. 本 SDK 仅供学习交流使用,请遵守学校相关规定
  4. 登录频率过高可能会被系统限制,请合理使用

安全建议

import os
from xmulogin import xmulogin

# 推荐:从环境变量读取敏感信息
username = os.getenv('XMU_USERNAME')
password = os.getenv('XMU_PASSWORD')

session = xmulogin(type=1, username=username, password=password)

发布到 PyPI

构建发行版

# 安装构建工具
pip install build twine

# 构建发行版
python -m build

上传到 PyPI

# 上传到 TestPyPI (测试)
python -m twine upload --repository testpypi dist/*

# 上传到 PyPI (正式)
python -m twine upload dist/*

许可证

MIT License

贡献

欢迎提交 Issue 和 Pull Request!

更新日志

v1.0.0 (2025-11-21)

  • 初始版本发布
  • 支持统一身份认证系统登录
  • 支持教务系统登录
  • 支持数字化教学平台登录

联系方式

如有问题或建议,请联系:your.email@example.com

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

xmulogin-1.0.1.tar.gz (8.4 kB view details)

Uploaded Source

Built Distribution

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

xmulogin-1.0.1-py3-none-any.whl (7.0 kB view details)

Uploaded Python 3

File details

Details for the file xmulogin-1.0.1.tar.gz.

File metadata

  • Download URL: xmulogin-1.0.1.tar.gz
  • Upload date:
  • Size: 8.4 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for xmulogin-1.0.1.tar.gz
Algorithm Hash digest
SHA256 9c8327dda3d84920312f7aad9fde34f353204b3a9388df65bc08a87671663ce0
MD5 4c009334336da188c728f2afaabc0070
BLAKE2b-256 a4bc7c60ead37ffc6b19f8a64bb90442380dc4033881df7766e9be779ef2933f

See more details on using hashes here.

File details

Details for the file xmulogin-1.0.1-py3-none-any.whl.

File metadata

  • Download URL: xmulogin-1.0.1-py3-none-any.whl
  • Upload date:
  • Size: 7.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.13.5

File hashes

Hashes for xmulogin-1.0.1-py3-none-any.whl
Algorithm Hash digest
SHA256 ce8de47af6d106c9e19fe7a0e13b4fd278794214184f01c52c525110af25b54f
MD5 2dc50221bc76bce2b462c71be0c1c346
BLAKE2b-256 d0b4cd54fc12280127dca75684aa69c8a5d48989ee3d848b1f6f28d66d679cd1

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