Skip to main content

Python SDK for Nullbr API - 用于访问 Nullbr API 的 Python SDK

Project description

nullbr

PyPI - Python Version PyPI - Version PyPI - Downloads PyPI - Format PyPI - Status

Python SDK for Nullbr API - 用于访问 Nullbr API 的 Python SDK

功能特性

  • 🔍 搜索电影、电视剧、合集和人物
  • 🎬 获取电影详细信息和资源链接(115网盘、磁力、ed2k、video)
  • 📺 获取电视剧详细信息和资源链接(115网盘、磁力、ed2k、video)
  • 📚 获取合集信息和资源链接
  • 🎯 支持剧集季度和单集资源获取
  • 🛠️ 完整的命令行工具支持
  • 🔄 内置HTTP重试机制,提高请求可靠性
  • 🔒 MIT 许可证

安装

使用 uv 安装(推荐)

uv add nullbr

使用 pip 安装

pip install nullbr

从源码安装

git clone https://github.com/iLay1678/nullbr-python.git
cd nullbr
uv sync
uv pip install -e .

文档

特性说明

内置重试机制

  • 自动重试失败的HTTP请求,默认最多重试3次
  • 针对临时错误状态码:429、500/502/503/504、408
  • 指数退避策略,重试间隔逐渐增加
  • 适用于所有HTTP方法,提高请求稳定性

错误处理

import httpx

try:
    movie = await sdk.get_movie(299536)
except httpx.HTTPError as e:
    print(f"API请求失败: {e}")
except ValueError as e:
    print(f"参数错误: {e}")

开发

安装开发依赖

uv sync --dev

代码格式化和检查

# 格式化代码
uv run ruff format nullbr/

# 检查和修复代码
uv run ruff check --fix nullbr/

# 仅检查代码
uv run ruff check nullbr/

构建文档

uv run pytest

构建发布

uv build

许可证

本项目采用 MIT 许可证。详情请见 LICENSE 文件。

贡献

欢迎提交Issue和Pull Request!

贡献指南

  1. Fork 项目
  2. 创建特性分支 (git checkout -b feature/AmazingFeature)
  3. 提交更改 (git commit -m 'Add some AmazingFeature')
  4. 推送到分支 (git push origin feature/AmazingFeature)
  5. 开启 Pull Request

更新日志

v1.0.7

  • 🔧 代码重构:TV相关响应类不再使用Movie的响应类
    • 📺 新增 TVMagnetItemTVEd2kItemTVVideoItem 专用于TV资源
    • 🎯 提升代码结构清晰度和类型安全性
    • ✅ 向后兼容,功能保持不变

v1.0.6

  • 新增剧集单集信息功能get_tv_episode() - 获取剧集单集详细信息
    • 📺 支持获取单集名称、简介、播出日期、评分、时长等详细信息
    • 🔍 返回单集的资源可用性标识(磁力、ed2k等)
  • 新增剧集单集磁力资源功能get_tv_episode_magnet() - 获取剧集单集磁力资源
    • 🧲 支持获取单集的磁力链接资源
    • 📋 按中文字幕分类排序,返回最多5个资源
    • 🎯 优先返回有中文字幕的资源
  • 扩展CLI命令:新增 tv-episodetv-episode-magnet 命令
  • ✅ 完善API文档和使用示例
  • ✅ 向后兼容,所有原有功能保持不变

v1.0.5

  • API 同步更新:同步上游API更新内容
    • 🎬 video资源接口新增 source 字段,标识资源来源(HD、WebRip等)
    • 💾 115网盘资源接口新增 resolutionqualityseason_list 字段
    • 📚 增强资源信息展示,提供更详细的资源质量信息
  • ✅ 更新数据模型以支持新字段
  • ✅ 完善API文档和示例代码
  • ✅ 向后兼容,新字段均为可选参数

v1.0.4

  • ✅ 添加HTTP重试机制,提高请求稳定性和可靠性

v1.0.3

  • ✅ 添加了电影video资源获取功能(m3u8/http)
  • ✅ 添加了剧集单集video资源获取功能(m3u8/http)
  • ✅ 添加了剧集单集ed2k资源获取功能
  • ✅ 修复了CLI命令行使用问题,添加了__main__.py
  • ✅ 优化了类型注解,使用Python 3.9+的内置泛型
  • ✅ 完善了CLI命令行工具
  • ✅ 增强了文档和示例代码

v1.0.0

  • 🎉 初始版本发布
  • ✅ 支持搜索、电影、电视剧、合集信息获取
  • ✅ 支持115、磁力、ed2k资源获取
  • ✅ 提供完整的命令行工具

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

nullbr-1.0.7.tar.gz (51.8 kB view details)

Uploaded Source

Built Distribution

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

nullbr-1.0.7-py3-none-any.whl (14.3 kB view details)

Uploaded Python 3

File details

Details for the file nullbr-1.0.7.tar.gz.

File metadata

  • Download URL: nullbr-1.0.7.tar.gz
  • Upload date:
  • Size: 51.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.16

File hashes

Hashes for nullbr-1.0.7.tar.gz
Algorithm Hash digest
SHA256 62464fced961418fb54717c4c388d100e18cac6673f119b8391639a96ed26a76
MD5 10691d710961cdb0ea9c08fb5df73d80
BLAKE2b-256 ac4bbd00303fd5415d7fc8907f1e52fdec097e725f4b05b3dae6f504b9fb0d97

See more details on using hashes here.

File details

Details for the file nullbr-1.0.7-py3-none-any.whl.

File metadata

  • Download URL: nullbr-1.0.7-py3-none-any.whl
  • Upload date:
  • Size: 14.3 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.8.16

File hashes

Hashes for nullbr-1.0.7-py3-none-any.whl
Algorithm Hash digest
SHA256 5b22056ab864210ebca951cea5f2fd5f9b5d1e55abff6df19395aff6735efda9
MD5 d3cda82a5974b099812900c90f19da4e
BLAKE2b-256 0e81a72919d7024dc7ccd8d1cae19c4f8abb0ef0b236765b75d74caffddee744

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