npx claudepluginhub nanmicoder/claude-code-skills --plugin srt-to-structured-dataWant just this skill?
Then install: npx claudepluginhub u/[userId]/[slug]
将 SRT 字幕文件转换为结构化 JSON 数据。 触发场景: (1) 需要解析 SRT 字幕文件 (2) 需要将字幕转为 JSON/结构化格式 (3) 需要提取字幕时间码和文本 (4) 视频字幕数据处理和分析 (5) 生成字幕纯文本或统计信息
This skill uses the workspace's default tool permissions.
scripts/parse_srt.pySRT 字幕转结构化数据
将 SRT 字幕文件解析为结构化 JSON 格式,支持提取时间码、计算时长、生成统计信息。
快速开始
基础用法
# 解析 SRT 文件,输出到终端
python <skill_path>/scripts/parse_srt.py input.srt
# 输出到文件
python <skill_path>/scripts/parse_srt.py input.srt -o output.json
# 包含统计信息
python <skill_path>/scripts/parse_srt.py input.srt --stats
# 仅输出纯文本(去除时间码)
python <skill_path>/scripts/parse_srt.py input.srt --text-only
注意: <skill_path> 是此 skill 的安装路径,通常为 ~/.claude/plugins/srt-to-structured-data@claude-code-skills/skills/srt-to-structured-data
输出格式
JSON 结构化数据
{
"subtitles": [
{
"index": 1,
"start_time": "00:00:00,000",
"end_time": "00:00:02,566",
"start_ms": 0,
"end_ms": 2566,
"duration_ms": 2566,
"text": "Clawdbot真的太火太火太火了"
},
{
"index": 2,
"start_time": "00:00:02,633",
"end_time": "00:00:04,766",
"start_ms": 2633,
"end_ms": 4766,
"duration_ms": 2133,
"text": "Github一天直接涨了5万星"
}
],
"statistics": {
"total_count": 2,
"total_duration_ms": 4699,
"total_duration_formatted": "00:04",
"avg_duration_ms": 2349
}
}
纯文本输出
使用 --text-only 参数时,仅输出字幕文本,每条一行:
Clawdbot真的太火太火太火了
Github一天直接涨了5万星
命令行参数
| 参数 | 说明 |
|---|---|
input.srt | 输入的 SRT 字幕文件路径 |
-o, --output | 输出文件路径(默认输出到终端) |
--stats | 在 JSON 输出中包含统计信息 |
--text-only | 仅输出纯文本,去除时间码和序号 |
字段说明
| 字段 | 类型 | 说明 |
|---|---|---|
index | int | 字幕序号 |
start_time | string | 开始时间(原始格式) |
end_time | string | 结束时间(原始格式) |
start_ms | int | 开始时间(毫秒) |
end_ms | int | 结束时间(毫秒) |
duration_ms | int | 持续时长(毫秒) |
text | string | 字幕文本内容 |
使用示例
场景 1:分析字幕文件
python <skill_path>/scripts/parse_srt.py video.srt --stats -o analysis.json
场景 2:提取纯文本用于翻译
python <skill_path>/scripts/parse_srt.py video.srt --text-only -o transcript.txt
场景 3:在 Python 中直接使用
import subprocess
import json
result = subprocess.run(
['python', '<skill_path>/scripts/parse_srt.py',
'input.srt', '--stats'],
capture_output=True, text=True
)
data = json.loads(result.stdout)
Similar Skills
Expert guidance for Next.js Cache Components and Partial Prerendering (PPR). **PROACTIVE ACTIVATION**: Use this skill automatically when working in Next.js projects that have `cacheComponents: true` in their next.config.ts/next.config.js. When this config is detected, proactively apply Cache Components patterns and best practices to all React Server Component implementations. **DETECTION**: At the start of a session in a Next.js project, check for `cacheComponents: true` in next.config. If enabled, this skill's patterns should guide all component authoring, data fetching, and caching decisions. **USE CASES**: Implementing 'use cache' directive, configuring cache lifetimes with cacheLife(), tagging cached data with cacheTag(), invalidating caches with updateTag()/revalidateTag(), optimizing static vs dynamic content boundaries, debugging cache issues, and reviewing Cache Component implementations.
Creating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems. Create original algorithmic art rather than copying existing artists' work to avoid copyright violations.