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. 启动

python -m openlist-ani

4.(可选)启动 AI 助理

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

[assistant]
enabled = true
max_history_messages = 10

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

1. 准备文件

在运行目录下创建:

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

2. 启动容器

docker run -d \
  --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

方式三:从源码编译

前置:安装 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.dev260314.tar.gz (92.1 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.dev260314-py3-none-any.whl (123.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: openlist_ani-1.0.0.dev260314.tar.gz
  • Upload date:
  • Size: 92.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","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.dev260314.tar.gz
Algorithm Hash digest
SHA256 e7b0c76c8a2032e9ffbb49239fc93ddbe386351d5a2de5430f373cde12acd568
MD5 c01efde51e1564172f608c26369c2e7b
BLAKE2b-256 afc281f909d7c6ab3ecc44f12ad7b44c9e5827bacb0472cc40886dca33d51001

See more details on using hashes here.

File details

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

File metadata

  • Download URL: openlist_ani-1.0.0.dev260314-py3-none-any.whl
  • Upload date:
  • Size: 123.7 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.10.9 {"installer":{"name":"uv","version":"0.10.9","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.dev260314-py3-none-any.whl
Algorithm Hash digest
SHA256 0ba5ead793491f303fb2f0d2f303fe87bc672069ed0f8347c638ef1e94d34f68
MD5 ca5b3e56184199c6addece12c9368176
BLAKE2b-256 25d45a747c836be9bd072067bb05153ed157c5cf960cb6c364fb6779bdaa84dc

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