LOADING

站长之家建站系统

media-parser

多平台短视频的解析与去水印核心功能

标签:
万彩AI

media-parser是一个高性能RESTful API解析去水印服务,专注于多平台短视频的解析与去水印核心功能。它支持抖音、快手、小红书等26主流平台,支持获取作者、标题、封面、视频、图集、音频、Live实况等,并提供简洁易用的接口供前端调用。项目采用下载器工厂模式实现平台兼容性,是支撑短视频去水印小程序或Web应用的理想后端解决方案。

media-parser

基于 Python 的多平台媒体原生本地解析系统(Starter 极简版)

媒体解析去水印是一款专为短视频创作者打造的原生本地解析工具。

通过“智能识别 -> 本地抓取 -> 提取地址 -> 快捷下载”的闭环,助你高效获取无水印素材。

不依赖第三方解析服务,不中转用户链接,核心解析逻辑全部在本地代码中完成。

💎 核心解析逻辑

  • 多平台智能适配:内置 ParserFactory 工厂模式,自动识别链接来源并分配对应解析器。
  • 原生本地解析:解析逻辑直接内置在项目代码中,由各平台 Parser 本地发起请求并提取真实媒体地址。
  • 不依赖第三方解析服务:不接入外部“代解析 API”或 SaaS 中转服务,部署后即可独立运行。
  • 纯粹解析 API:极简版只保留最核心的 JSON 解析服务,无数据库依赖,无鉴权门槛,适合开发者快速提取原型直接使用。

✨ 项目特点

  • 本地可控:解析链路和请求逻辑都在仓库内,方便审计、调试和二次开发。
  • 部署简单:安装 Python 依赖后即可运行,不需要额外申请第三方解析平台账号或密钥。
  • 便于扩展:每个平台对应独立 Parser,新增平台时可沿用现有工厂模式和统一返回结构。

💾 支持的平台矩阵

平台名称 作者 标题 封面 视频 图集 音频 实况 平台名称 作者 标题 封面 视频 图集 音频 实况
抖音 ✓ ✓ ✓ ✓ ✓ ✓ ✓ 小红书 ✓ ✓ ✓ ✓ ✓ ✓
快手 ✓ ✓ ✓ ✓ ✓ ✓ 哔哩哔哩 ✓ ✓ ✓ ✓ ✓
皮皮搞笑 ✓ ✓ ✓ ✓ 好看视频 ✓ ✓ ✓ ✓
微视 ✓ ✓ ✓ ✓ 梨视频 ✓ ✓ ✓ ✓
AcFun ✓ ✓ ✓ ✓ 微博 ✓ ✓ ✓ ✓ ✓
西瓜视频 ✓ ✓ ✓ ✓ 知乎 ✓ ✓ ✓ ✓ ✓
逗拍 ✓ ✓ ✓ 虎牙 ✓ ✓ ✓
绿洲 ✓ ✓ ✓ 美拍 ✓ ✓ ✓
皮皮虾 ✓ ✓ ✓ ✓ 全民小视频 ✓ ✓ ✓ ✓
全民K歌 ✓ ✓ ✓ 六间房 ✓ ✓ ✓
新片场 ✓ ✓ ✓ 最右 ✓ ✓ ✓
TikTok ✓ ✓ ✓ ✓ ✓ ✓ YouTube ✓ ✓ ✓ ✓ ✓

🚀 快速开始

当前版本主打“原生本地解析”。只要目标平台仍可通过现有脚本抓取,就不需要额外依赖第三方解析服务。

1. 获取源码

git clone https://github.com/ucmao/media-parser.git
cd media-parser
2. Docker 部署 (推荐)

项目自带完整的 Dockerfile 和 docker-compose 配置文件。如果你已经安装了 Docker,一键即可拉起服务:

# 构建并后台启动容器
docker-compose up -d --build
容器默认运行在 8051 端口。启动成功后,你可以直接在浏览器中打开: http://localhost:8051

3. 本地环境部署 (不使用 Docker)

3.1 环境要求

  • Python: 3.8 及以上版本

3.2 安装依赖

pip install -r requirements.txt
3.3 启动应用

开发模式:

python app.py
生产模式 (Gunicorn):
gunicorn -w 4 -b 0.0.0.0:8051 app:app
4. 环境变量配置(小红书高级解析,可选)

默认小红书普通分享链接无需Cookie即可解析;仅解析推荐流链接如xsec_source=pc_feed时,才需配置登录Cookie。

Docker/本地部署步骤

  1. 复制模板生成配置文件
cp .env.example .env
  1. 在.env填入小红书Cookie
XIAOHONGSHU_COOKIE="a1=xxx;webId=xxx"
  1. 启动服务
  • Docker:docker-compose up -d --build
  • 本地运行:python app.py

📂 项目结构

media-parser/
├── app.py                # 程序入口
├── configs/              # 核心配置与业务常量
├── src/
│   ├── api/             # 路由层:API 接口处理仅保留核心 parse.py
│   ├── parsers/     # 核心:各平台视频解析实现
│   └── parser_factory.py # 工厂模式实现
├── static/              # 静态资源保存位置
├── utils/               # 通用工具函数 (网络请求等)
└── tests/               # 自动化测试用例

🔌 API 核心接口说明

解析接口:POST /api/parse

请求参数 (Request Body)

格式: application/json

参数名 类型 必填 描述 示例值
text string 是 视频分享链接或包含链接的文本短语 "https://v.douyin.com/..."

返回说明 (Response)

格式: application/json

成功响应示例:

{
  "code": 200,
  "msg": "成功",
  "data": {
    "video_id": "7123...",
    "platform": "抖音",
    "title": "视频标题内容",
    "video_url": "https://... (无水印视频真实地址)",
    "audio_url": "https://... (背景音乐/音频地址)",
    "cover_url": "https://... (高清封面地址)",
    "author": {
      "nickname": "作者昵称",
      "author_id": "作者ID",
      "avatar": "https://..."
    },
    "image_list": [
      "https://... (普通图集地址)",
      {
        "url": "https://... (实况图封面地址)",
        "live_photo_url": "https://... (实况图视频原件地址)"
      }
    ]
  },
  "succ": true
}
失败响应示例:
{
  "code": 400,
  "msg": "该链接尚未支持提取 / 解析失败",
  "data": null,
  "succ": false
}

相关导航

AI副业

暂无评论

暂无评论...