- 每次解析速度稳定在 1 ~ 3 秒,采用 API 拦截技术,快速且完整;
温馨提示:当前测试服务器带宽仅为 3Mbps(上下行),解析速度可能较慢,建议部署到更高带宽的服务器以获得更好的性能体验;
- 浏览器实例复用:使用单例模式管理浏览器实例,首次启动后响应速度提升约 2-3 秒;
- 智能缓存机制:相同 URL 在一小时内重复请求将直接返回缓存结果,大幅提升响应速度;
- 多平台支持:支持小红书、抖音解析,自动获取无水印资源;
- 完整资源捕获:通过 API 拦截技术,确保获取所有图片和视频资源。
| 平台 | 支持类型 | 特点 |
|---|---|---|
| 小红书 | 视频、图片(单图/多图) | 完整获取所有图片资源 |
| 抖音 | 视频、图集 | 无水印视频 |
当前项目采用 API 拦截技术实现短视频解析,直接从平台 API 获取数据,无需复杂签名算法,速度快且稳定性高。
技术优势:
- API 拦截:直接获取平台 API 数据,比 DOM 解析快 3-4 倍
- 完整资源:从 API 响应中提取所有资源,不会遗漏
- 资源优化:拦截图片、字体等资源加载,降低带宽消耗
- 自动降级:API 失败时自动降级到浏览器解析
- 浏览器复用:单例模式管理浏览器实例
已知限制:
- 抖音图集解析:由于抖音图集类型不调用详情 API,需使用 Puppeteer 监听网络资源获取图片,无法返回标题、作者头像等元数据信息(仅返回资源列表)
- 资源捕获稳定性:使用 Puppeteer(非逆向手段)不仅请求速度较慢(相比 API 调用),还存在一定概率丢失捕获资源的情况,属于正常现象
- 支持更多短视频平台
- 实现纯 API 调用(无需浏览器)
- 添加批量解析功能
- 提供更多 CDN 加速选项
| 接口路径 | 请求方法 | Content-Type | 请求参数示例 | 说明 |
|---|---|---|---|---|
| /pv | POST | application/json | { "url": "平台链接" } |
解析短视频接口,简化地址 |
| /public/parseVideo | POST | application/json | { "url": "平台链接" } |
解析短视频接口 |
| 接口路径 | 请求方法 | 请求参数示例 | 说明 |
|---|---|---|---|
| /public/cache/stats | GET | 无 | 获取缓存统计信息(缓存数量、所有缓存的URL等) |
| /public/cache/clear | POST | 无 | 清空所有缓存 |
| /public/cache/delete | POST | { "url": "平台链接" } |
删除指定URL的缓存 |
缓存说明:
- 缓存有效期:1小时
- 缓存键生成规则:自动移除URL中的动态查询参数(如
xhsshare、xsec_token等),确保相同内容的URL能命中缓存 - 自动清理:每10分钟自动清理过期缓存
- 缓存命中率:相同URL在一小时内的重复请求将直接从内存返回,响应速度从秒级降至毫秒级
PORT:服务监听端口(开发环境建议 10010,生产环境建议 7777)PUPPETEER_EXECUTABLE_PATH:指定 Puppeteer 启动时所用 Chromium/Chrome 浏览器的绝对路径,建议在 Docker 或服务器环境下设置为/usr/bin/chromium-browser,否则 Puppeteer 可能无法正常启动。
bun installbun run devbun run build-local && bun run start你可以直接拉取并运行我们已构建好的官方镜像,无需本地构建:
docker pull yassine778/video-parser:latestdocker run -d \
-p 10010:7777 \
--name video-parser \
yassine778/video-parser:latest容器启动后,发起 POST 请求 http://localhost:10010/public/parseVideo 即可调用接口。
详情内容请参考详细部署文档。
如遇镜像拉取缓慢,可参考镜像源配置指南加速 Docker 镜像下载。
如需进一步定制或有疑问,欢迎随时联系技术支持。
- QQ: 57878778
- 邮箱:[email protected]
本项目采用 Apache License 2.0 许可证。Copyright © 2025 济宁若森软件开发中心(个人独资)

