Communitygithub.com

b44x/filmweb

从 Filmweb.pl 获取电影和电视剧数据:按标题、评分、票数、影评人评分、类型、时长、导演、演员、剧情、首映日期、观看渠道(VOD 提供商及价格)以及演员详情进行搜索。当用户询问 Filmweb 上的电影或电视剧、粘贴 filmweb.pl 链接,或者需要波兰语评分、剧情描述、演员信息或 VOD 信息时使用。

filmweb 是什么?

这是一个专为 AI 代理(如 Claude Code、Cursor 等)设计的技能,用于从波兰电影网站 Filmweb.pl 获取详细的电影、电视剧和游戏数据。它通过一个零依赖的 Python 脚本 `scripts/filmweb.py` 调用 Filmweb 的 JSON API,所有输出均为 JSON 格式,便于程序化处理。技能支持按标题搜索、根据链接提取 ID、获取影片或剧集的评分(包括用户和影评人评分)、类型、时长、导演、主要演员、完整剧情描述、上映日期以及 VOD 观看信息(含价格,单位为兹罗提)。此外,还能查询演员的个人资料。该技能特别适合处理波兰语查询,如“ile Matrix ma na Filmwebie”(《黑客帝国》在 Filmweb 上的评分)或“gdzie obejrzę…”(在哪里观看……)。它提供了清晰的命令集和退出码,并包含了当 API 不可用时的备用方案——通过抓取公开网页获取数据。

兼容平台~Claude Code~Codex CLI~Cursor
npx skills add https://github.com/b44x/ai-polish-skills/tree/HEAD/skills/filmweb

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

filmweb 是做什么的?

使用一个小型无依赖的 Python CLI scripts/filmweb.py 从 www.filmweb.pl 背后的 JSON API 获取数据,该脚本始终输出 JSON。

运行脚本

从本技能目录运行。使用任意可用的 Python 启动器:

操作系统命令
Linux / macOSpython3 scripts/filmweb.py <command> …
Windowspy scripts/filmweb.py <command> … (或 python)

无需安装步骤。

工作流程

  1. 获取 Filmweb ID。
    • 用户提供了链接 → 运行 filmweb.py id "<url>"(离线处理)。 ID 是 slug 末尾的数字:filmweb.pl/film/Matrix-1999-628 → 628, filmweb.pl/serial/Gra+o+tron-2011-476848 → 476848。
    • 用户提供了标题 → 运行 filmweb.py search "<title>"。结果按相关性排序。 当用户明确指向电视剧时,添加 --type=serial(电影则用 --type=film)。 如果有多个标题可能匹配(重拍版、续集、电影 vs 剧集),使用 film 命令按年份检查,或询问用户。
  2. 仅获取问题所需的数据。
    • 评分、类型、导演、简要剧情 → film
    • “谁出演了……” → cast(film 已包含两位主要演员)
    • “在哪里可以看……” → vod
    • “什么时候首映……” → dates
    • 完整剧情 → description;关于某人的详细信息 → person <personId>
  3. 用用户的语言回答,并引用 film 返回中的 url。评分四舍五入到一位小数,并提及投票数(例如“7,6/10 z 872 tys. ocen”)。VOD 价格以兹罗提(zł)给出。

电影和剧集

电影、电视剧和游戏在 Filmweb 上共享同一个 ID 空间,每个命令都接受任意类型——对剧集也可以使用 film <id>(例如 film 476848 获取“Gra o tron”)。输出中的 type 字段(film、serial 等)会标明类型。对于剧集,year 表示第一季的年份,duration 是一集的时长,而非整部剧的时长。

命令

命令返回
`search "" [--type=filmserial
`film <idurl>`(电影或剧集)
`description <idurl>`
`cast <idurl> [--limit=10]`
`dates <idurl>`
`vod <idurl>`
person <personId>name, realName, birthDate, birthplace, height, profession, photoUrl, knownForIds, url
id <url>{"id": …},离线处理

字段参考:references/output.md。

退出码

JSON 输出到 stdout;错误输出到 stderr,格式为 {"error": "...", "type": "..."}。

退出码含义处理方式
0成功使用 JSON
2未找到告知用户;重新检查 ID
64用法错误修正参数
69Filmweb / 网络错误重试一次;如果仍然失败,使用备用方案

备用方案

该 API 是非官方的,可能因网络原因发生变化或被屏蔽。如果脚本持续以退出码 69 失败,或者用户需要脚本无法提供的数据(角色名、评论、完全演职员表),请使用网页抓取工具或 curl 获取公开页面(来自 film 的 url,或 https://www.filmweb.pl/film/<slug>-<id>)并从中读取数据。告知用户数据来自网页。

规则

  • 不要“以防万一”对每个搜索结果都调用 film;只检查你需要的候选条目。
  • 不要编造脚本未返回的数据。

相关技能