---
name: films-search
description: Search cloud drives for downloadable film and TV resources (movies, TV series, anime). Use this skill when the user wants to download a specific movie or TV show. Do NOT use for general movie information, schedules, reviews, or recommendations.
official: false
version: 1.0.2
---

# Films Search Skill

搜索影视资源（电影、电视剧、动漫），通过实时爬虫深度抓取资源页面，从各网盘平台获取公开分享的资源链接。

## 前置条件

- **web-search** skill（必需，用于搜索发现资源页面）

## 命令

### 搜索资源

```bash
bash "$SKILLS_ROOT/films-search/scripts/film-search.sh" search "关键词" [选项]
```

**选项：**

| 参数 | 说明 | 默认值 |
|------|------|--------|
| `--pan <type>` | 筛选网盘类型: `quark`, `baidu`, `aliyun`, `uc`, `all` | `all` |
| `--quality <q>` | 筛选画质: `4k`, `1080p`, `720p`, `all` | `all` |
| `--limit <n>` | 每个平台最大结果数 | `5` |
| `--engine <e>` | 搜索引擎: `deep`, `web` | `deep` |

**引擎说明：**

- `deep`（默认，推荐）— web-search 搜索发现资源页面 + JavaScript 深度抓取提取网盘链接和提取码，结果最准确
- `web` — 仅从 web-search 搜索引擎摘要中提取链接（速度快，但准确率较低，不做深度抓取）

**示例：**

```bash
# 搜索所有平台的资源（默认使用深度搜索）
bash "$SKILLS_ROOT/films-search/scripts/film-search.sh" search "流浪地球2"

# 只搜夸克网盘 4K 资源
bash "$SKILLS_ROOT/films-search/scripts/film-search.sh" search "流浪地球2" --pan quark --quality 4k

# 限制结果数量
bash "$SKILLS_ROOT/films-search/scripts/film-search.sh" search "流浪地球2" --limit 10

# 使用浅层搜索（不深度抓取页面）
bash "$SKILLS_ROOT/films-search/scripts/film-search.sh" search "流浪地球2" --engine web
```

Windows 系统使用 PowerShell 脚本：
```powershell
powershell -File "$SKILLS_ROOT/films-search/scripts/film-search.ps1" search "流浪地球2" --pan quark
```

### 热门推荐

```bash
bash "$SKILLS_ROOT/films-search/scripts/film-search.sh" hot "2025年热门电影"
```

本质上是以推荐类关键词调用搜索，返回相关网盘资源。

### 解析跳转链接

```bash
bash "$SKILLS_ROOT/films-search/scripts/film-search.sh" resolve "https://example.com/goto/xxx"
```

当搜索结果中的链接需要二次跳转时，用此命令解析出真实网盘地址。

## Agent 使用流程

1. 用户说「帮我找 XXX 电影」→ 执行 `search "XXX"`
2. 解析返回的 JSON，提取网盘链接
3. 按网盘类型和画质分组呈现给用户
4. 如果结果中有提取码 (`extractCode`)，一并展示给用户
5. 如果结果中有 `pageUrl` 但没有直接 `url`，用 `resolve` 命令获取真实地址

**示例对话：**

> 用户：帮我找一下流浪地球2的夸克网盘资源，要4K的
>
> Agent：
> 1. 执行 `search "流浪地球2" --pan quark --quality 4k`
> 2. 从 JSON 结果中取出匹配项
> 3. 返回：标题 + 画质 + 夸克网盘链接 + 提取码（如有）

## 输出格式

所有命令输出 JSON，结构如下：

```json
{
  "success": true,
  "data": {
    "query": "流浪地球2",
    "total": 5,
    "results": [
      {
        "title": "资源标题",
        "pan": "quark",
        "url": "https://pan.quark.cn/s/xxx",
        "quality": "4K",
        "extractCode": "ab12",
        "source": "deep-search",
        "pageUrl": "https://example.com/resource/123"
      }
    ]
  }
}
```

**字段说明：**
- `pan`: 网盘类型 — `quark`(夸克), `baidu`(百度), `aliyun`(阿里), `uc`(UC), `magnet`(磁力)
- `quality`: 检测到的画质 — `4K`, `1080P`, `720P`, 空字符串表示未检测到
- `source`: 结果来源 — `deep-search`(深度抓取), `web-search`(搜索摘要)
- `url`: 网盘分享链接（可直接访问）
- `extractCode`: 提取码/密码（如果检测到）
- `pageUrl`: 结果来源页面 URL

## 配置

编辑 `films-search/.env` 可自定义偏好：

```bash
# 偏好的网盘类型（逗号分隔，排在前面的优先展示）
FILM_SEARCH_PREFERRED_PAN=quark,aliyun,baidu,uc

# 深度搜索开关（推荐开启）
FILM_SEARCH_DEEP_ENABLED=true

# 每次搜索最多访问的结果页面数
FILM_SEARCH_DEEP_MAX_PAGES=6

# 并发抓取页面数
FILM_SEARCH_DEEP_CONCURRENCY=4
```

## 注意事项

- 搜索建议使用**中文片名**，效果最好
- 深度搜索（`--engine deep`）比浅层搜索多 2-3 秒，但结果准确得多
- 深度搜索需要 web-search skill 启用，首次搜索可能需要等待浏览器启动
- 网盘分享链接可能随时失效，建议尽快使用

## 免责声明

本工具仅供个人学习和研究使用。不托管、不分发、不提供任何版权内容，仅聚合搜索引擎上公开可访问的链接。请遵守所在地区的法律法规。
