Skip to content

刮削逻辑流程说明

OmniBox 的刮削功能可以自动为影视资源匹配 TMDB 元数据,提供丰富的影片信息、海报、演员信息等,并自动建立视频文件与剧集的映射关系。

概述

刮削功能通过以下步骤实现:

  1. 资源识别:通过资源唯一标识(ResourceID)识别资源
  2. 元数据检查:检查数据库中是否已有刮削记录
  3. TMDB 匹配:通过关键词或 TMDB ID 匹配影视作品
  4. 数据获取:从 TMDB API 获取详细的影视信息
  5. 文件映射:自动建立视频文件与剧集的映射关系
  6. 数据存储:将刮削结果保存到数据库

完整流程

详细流程说明

1. 前置检查

1.1 检查 TMDB API Key

系统首先检查是否配置了 TMDB API Key。如果未配置,将跳过刮削流程。

1.2 检查视频文件列表

如果没有视频文件,则无需进行刮削。

2. 数据库检查

系统会检查数据库中是否已有该资源的刮削记录。

3. 重新刮削逻辑

如果检测到视频数量变化,系统会尝试使用已有的 TMDB 信息重新刮削。

4. 刮削参数判断

系统根据提供的参数决定如何执行刮削:

5. TMDB 数据获取

5.1 直接获取(有 TMDB ID)

当提供 TMDB ID 时,直接调用 TMDB API 获取详细信息。

5.2 自动搜索(有关键词)

当提供搜索关键词时,系统会:

  1. 在 TMDB 中搜索电影和电视剧
  2. 选择最佳匹配结果
  3. 获取详细信息

6. 视频映射构建

系统会根据文件名自动匹配剧集信息:

7. 数据存储

刮削结果会保存到 scrape_metadata 表中:

使用场景

场景 1:网盘资源刮削

在网盘爬虫脚本中,当用户查看资源详情时自动触发刮削:

javascript
// 在 detail 函数中
const allVideoFiles = await getAllVideoFiles(shareURL, fileList.files, "0");

// 执行刮削处理
await OmniBox.processScraping(
  shareURL,        // resourceId: 网盘分享链接
  keyword,         // 搜索关键词
  resourceName,    // 资源名称
  allVideoFiles    // 视频文件列表
);

// 获取刮削后的元数据
const metadata = await OmniBox.getScrapeMetadata(shareURL);

场景 2:手动指定 TMDB ID

通过前端界面手动指定 TMDB ID 进行刮削:

javascript
// 前端调用
POST /api/cloud-drive/scrape-and-save
{
  "shareUrl": "https://pan.quark.cn/s/...",
  "tmdbId": 12345,
  "type": "movie",
  "season": 1  // TV类型时可选
}

场景 3:自动搜索匹配

系统根据资源名称自动搜索并匹配:

javascript
// 自动搜索流程
1. 使用关键词搜索 TMDB
2. 获取搜索结果列表
3. 选择最佳匹配(评分最高或AI辅助)
4. 执行刮削

数据流转

API 接口

处理刮削

通用接口POST /api/scrape/process

json
{
  "resourceId": "资源唯一标识",
  "keyword": "搜索关键词(可选)",
  "resourceName": "资源名称(可选)",
  "videoFiles": [
    {
      "fid": "文件ID",
      "file_name": "文件名",
      "size": 文件大小,
      "format_type": "文件类型"
    }
  ]
}

网盘兼容接口POST /api/spider/omnibox/drive/process-scraping

json
{
  "shareURL": "网盘分享链接",
  "keyword": "搜索关键词(可选)",
  "resourceName": "资源名称(可选)",
  "videoFiles": [...]
}

获取元数据

通用接口GET /api/scrape/metadata?resourceId=...

网盘兼容接口GET /api/cloud-drive/metadata?shareUrl=...?resourceId=...

配置要求

TMDB API Key

刮削功能需要配置 TMDB API Key:

  1. 访问 TMDB 注册账号
  2. 在账户设置中申请 API Key
  3. 在 OmniBox 后台配置 API Key

AI 辅助匹配(可选)

如果启用了 AI 助手,系统会使用 AI 模型辅助匹配,提高匹配准确度:

  1. 配置 AI 模型(OpenAI、Claude 等)
  2. 启用 TMDB 助手功能
  3. 系统会自动使用 AI 进行智能匹配

注意事项

  1. API 限制:TMDB API 有请求频率限制,建议合理使用
  2. 匹配准确度:自动匹配可能不够准确,建议手动指定 TMDB ID
  3. 文件命名:规范的文件命名有助于提高映射准确度
  4. 数据更新:当视频文件数量变化时,系统会自动重新刮削

相关文档

基于 MIT 许可发布