厦门大学统一身份认证登录SDK
Reason this release was yanked:
deprecated
Project description
XMULogin
厦门大学统一身份认证登录 SDK
简介
XMULogin 是一个用于厦门大学统一身份认证系统的 Python SDK,提供简单易用的接口来登录以下系统:
- 统一身份认证系统
- 教务系统
- 数字化教学平台 (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
注意事项
- 请妥善保管您的账号密码,不要在代码中硬编码或提交到版本控制系统
- 建议使用环境变量或配置文件来存储敏感信息
- 本 SDK 仅供学习交流使用,请遵守学校相关规定
- 登录频率过高可能会被系统限制,请合理使用
安全建议
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
Release history Release notifications | RSS feed
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)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
9c8327dda3d84920312f7aad9fde34f353204b3a9388df65bc08a87671663ce0
|
|
| MD5 |
4c009334336da188c728f2afaabc0070
|
|
| BLAKE2b-256 |
a4bc7c60ead37ffc6b19f8a64bb90442380dc4033881df7766e9be779ef2933f
|
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
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ce8de47af6d106c9e19fe7a0e13b4fd278794214184f01c52c525110af25b54f
|
|
| MD5 |
2dc50221bc76bce2b462c71be0c1c346
|
|
| BLAKE2b-256 |
d0b4cd54fc12280127dca75684aa69c8a5d48989ee3d848b1f6f28d66d679cd1
|