Skip to main content

M-TEAM API SDK

Project description

M-TEAM API SDK

M-TEAM API 的 Python SDK,提供了简单易用的接口封装。

安装

pip install mteam

快速开始

  1. 配置环境变量
cp .env.example .env

编辑 .env 文件,填入你的 API 密钥:

MTEAM_API_KEY=your_api_key_here
MTEAM_BASE_URL=http://test2.m-team.cc/api
  1. 基本使用
from mteam import MTeamClient

# 创建客户端实例
client = MTeamClient()

# 搜索种子
from mteam.torrent import TorrentSearch, TorrentCategory
search = TorrentSearch(
    keyword="测试",
    categories=[TorrentCategory.MOVIE],
    page_size=10
)
result = client.torrent.search(search)

# 获取用户资料
profile = client.member.get_profile()

功能模块

用户模块

from mteam.member import LoginForm, RegisterForm

# 用户登录
form = LoginForm(username="test", password="password")
result = client.member.login(form)

# 获取用户资料
profile = client.member.get_profile()

种子模块

from mteam.torrent import TorrentSearch, TorrentCategory

# 搜索种子
search = TorrentSearch(keyword="测试")
results = client.torrent.search(search)

# 获取种子详情
torrent = client.torrent.get_detail(torrent_id=123)

字幕模块

from mteam.subtitle import SubtitleSearch

# 搜索字幕
search = SubtitleSearch(keyword="测试")
subtitles = client.subtitle.search(search)

# 上传字幕
form = SubtitleUploadForm(
    title="测试字幕",
    torrent_id=123,
    language_id=1
)
result = client.subtitle.upload(form, "path/to/subtitle.srt")

测试

  1. 安装测试依赖
pip install pytest python-dotenv
  1. 运行测试
# 运行所有测试
pytest

# 运行特定模块测试
pytest tests/test_member.py
pytest tests/test_torrent.py

# 运行单个测试
pytest tests/test_member.py::test_login

# 显示详细输出
pytest -v

注意事项

  1. API 密钥安全

    • 不要在代码中硬编码 API 密钥
    • 使用环境变量或配置文件管理密钥
    • 不要将密钥提交到版本控制系统
  2. 错误处理

    • 所有 API 调用都可能抛出 APIError 异常
    • 检查响应的 codemessage 字段
    • 合理处理网络错误和超时
  3. 请求限制

    • 注意 API 的请求频率限制
    • 合理设置超时时间
    • 必要时实现请求重试机制

常见问题

  1. API 密钥无效

    • 检查 .env 文件中的 MTEAM_API_KEY 是否正确
    • 确认 API 密钥未过期
  2. 请求失败

    • 检查网络连接
    • 确认 API 基础 URL 是否正确
    • 查看错误响应的具体信息
  3. 类型错误

    • 确保传入参数符合类型要求
    • 使用 IDE 的类型提示功能
    • 参考 API 文档中的参数说明

API 文档

完整的 API 文档请参考:[API 文档链接]

贡献指南

  1. Fork 本仓库
  2. 创建功能分支
  3. 提交代码
  4. 创建 Pull Request

许可证

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

mteam-0.1.5.tar.gz (26.9 kB view details)

Uploaded Source

Built Distribution

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

mteam-0.1.5-py3-none-any.whl (13.1 kB view details)

Uploaded Python 3

File details

Details for the file mteam-0.1.5.tar.gz.

File metadata

  • Download URL: mteam-0.1.5.tar.gz
  • Upload date:
  • Size: 26.9 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for mteam-0.1.5.tar.gz
Algorithm Hash digest
SHA256 f0b28943d8547ad0880957e3f9728e8b462baf895eb8b5773e31f6b275970c1e
MD5 acf671a446f540a7d68f1819a5666e81
BLAKE2b-256 137089b34adb9a8d44a52f3a78d1a2535f9e7f5e3a35ab82e14b8d764b3e718c

See more details on using hashes here.

File details

Details for the file mteam-0.1.5-py3-none-any.whl.

File metadata

  • Download URL: mteam-0.1.5-py3-none-any.whl
  • Upload date:
  • Size: 13.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.11.5

File hashes

Hashes for mteam-0.1.5-py3-none-any.whl
Algorithm Hash digest
SHA256 e9930b6ded61f02cc4e90f92a24d8b7163369f1e8721fe26eb27a166bcefbeb4
MD5 c807303acf95084caf06156774ac7115
BLAKE2b-256 905c8d689a2cb1747d54fd9be7f5e88c0ac27347874e6fb450d46953a237e6ad

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