Skip to main content

Automatically fetch anime updates from RSS feeds and download them offline to the corresponding cloud storage via OpenList.

Project description

Openlist-Ani

🎬 RSS 订阅 → 自动下载 → AI 重命名,一站式番剧自动化管理

从动漫番剧相关的 RSS 订阅源中自动获取番剧更新,通过 Openlist 离线下载至对应网盘,
并结合 LLM 分析资源名,将资源重命名为 Emby / Jellyfin 可解析的格式。


✨ 特点

  • 📡 自动追番 — 自动获取 RSS 番剧更新并下载
  • 📦 多网盘支持 — 基于OpenList实现,支持 PikPak、115 等离线下载
  • 🤖 AI 重命名 — AI 分析资源名 + TMDB 搜索,精准获取番剧名、季度、集数
  • 💬 智能助理 — 挂载至 Telegram Bot,通过自然语言让 AI 帮你搜索并下载资源
  • 🔔 更新通知 — 通过 PushPlus、Telegram 等渠道推送更新

📋 准备工作

  1. 参照 Openlist 官方文档 部署 Openlist,并搭建好离线下载
  2. 准备好 RSS 订阅链接(如 Mikan Project
  3. 准备好 LLM API Key

🚀 快速开始

方式一:PIP 安装(推荐)

1. 安装

pip install openlist-ani

2. 创建配置文件

在运行目录下新建 config.toml,填入以下内容:

[rss]
urls = ["RSS订阅链接"]

[openlist]
url = "http://localhost:5244"       # Openlist 访问地址
token = ""                          # 令牌,见「设置 → 其他 → 令牌」
download_path = "/PikPak/Anime"     # 下载保存路径
offline_download_tool = "QBITTORRENT"  # 离线下载工具

[llm]
openai_api_key = ""                 # API Key
openai_base_url = "https://api.deepseek.com/v1"
openai_model = "deepseek-chat"

完整配置项请参考 config.toml.example配置说明

3. 启动

openlist-ani

4.(可选)启动 AI 助理

在配置文件中补充助理配置后运行:

[assistant]
enabled = true

[assistant.telegram]
bot_token = ""        # 从 @BotFather 获取
allowed_users = []    # 允许的用户 ID 列表,留空则不限制
openlist-ani-assistant
方式二:Docker 部署

1. 准备文件

在运行目录下创建:

  • config.toml — 配置文件(内容同上)
  • data/ — 数据目录

2. 启动容器

docker run -d \
  --name openlist-ani \
  --network host \
  -e ENABLE_ASSISTANT=false \
  -v /path/to/config.toml:/config.toml \
  -v /path/to/data:/data \
  twosix26/openlist-ani:latest

/path/to/ 替换为你的实际路径。
如需启用 AI 助理,填写好配置后将 ENABLE_ASSISTANT 设为 true
详细说明见 Docker 部署指南

方式三:从源码编译

前置:安装 uv

Linux / macOS

curl -LsSf https://astral.sh/uv/install.sh | sh

Windows

powershell -ExecutionPolicy ByPass -c "irm https://astral.sh/uv/install.ps1 | iex"

更多安装方式参考 uv 官方文档

步骤

# 1. 克隆仓库
git clone https://github.com/TwooSix/Openlist-Ani.git && cd Openlist-Ani

# 2. 切换到最新版本(master 为开发分支,不保证稳定)
git checkout v***    # 替换为最新版本号

# 3. 安装依赖
uv sync --no-dev --frozen

# 4. 创建 config.toml 并填写配置(内容同上)

# 5. 启动
uv run openlist-ani

# 6.(可选)启动 AI 助理
uv run openlist-ani-assistant

📖 文档

🖼️ 效果展示

重命名结果 智能助理

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

openlist_ani-1.0.0.dev260317.tar.gz (106.3 kB view details)

Uploaded Source

Built Distribution

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

openlist_ani-1.0.0.dev260317-py3-none-any.whl (156.1 kB view details)

Uploaded Python 3

File details

Details for the file openlist_ani-1.0.0.dev260317.tar.gz.

File metadata

  • Download URL: openlist_ani-1.0.0.dev260317.tar.gz
  • Upload date:
  • Size: 106.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for openlist_ani-1.0.0.dev260317.tar.gz
Algorithm Hash digest
SHA256 281a168684a30d2ec81b127c444ec5cd3c011593afe6014af2a37586a0c4ffa5
MD5 fde8def9573ac67f49182c8a91285e77
BLAKE2b-256 92f6b1e64595fb661be41e12c1b8418faea073a5273944a6b13edeaf90669861

See more details on using hashes here.

File details

Details for the file openlist_ani-1.0.0.dev260317-py3-none-any.whl.

File metadata

  • Download URL: openlist_ani-1.0.0.dev260317-py3-none-any.whl
  • Upload date:
  • Size: 156.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.11 {"installer":{"name":"uv","version":"0.10.11","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for openlist_ani-1.0.0.dev260317-py3-none-any.whl
Algorithm Hash digest
SHA256 b931e98d84b945cba3357e3907ed578cb0e696b92d2648f8a969bd472bcf5819
MD5 4553c285588fdaea5d2ce2e976b8d8b8
BLAKE2b-256 d0aa0e2d08b3f4835d440b0bf36660f052f6f5898556bbf6f18c46ce537583ad

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