去水印 API 接入教程

从接口调用到微信小程序对接 · 域名 qsy.aiwyuw.cn

快速开始

  1. 调用聚合接口:GET /api/short_videos.php?url=分享链接
  2. 或等价接口:GET /api/parse.php?url=...GET /api/v1/parse?url=...
  3. 从响应 data.url 取得 CDN 直链,用于播放与下载
  4. 查询支持平台:GET /api/platforms.php

网页与聚合解析接口公开可用,不强制登录。需要用量统计时可在用户中心获取 API Key。

认证方式

聚合解析、分平台解析均无需 API Key。 若需用量统计,可在请求中携带 Key:

Header: X-API-Key: wm_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx

或 Query 参数: ?api_key=wm_xxxxxxxx

用户注册 后登录用户中心获取 Key。公开调用示例:GET /api/short_videos.php?url=...(无需 Header)。

聚合解析(推荐)

GET /api/short_videos.php?url=分享链接

自动识别平台并返回标准 JSON:{ code, msg, data }

GET https://qsy.aiwyuw.cn/api/short_videos.php?url=https://v.douyin.com/xxxxx/

兼容路径

GET /api/parse.php — 与聚合接口相同

GET /api/v1/parse — 兼容旧路径,行为一致

响应示例

{
  "code": 200,
  "msg": "解析成功",
  "data": {
    "platform": "douyin",
    "type": "video",
    "title": "视频标题",
    "desc": "视频描述",
    "author": {
      "name": "作者昵称",
      "id": "123456789",
      "avatar": "https://..."
    },
    "cover": "https://...封面",
    "url": "https://...无水印视频 CDN 直链",
    "video": "https://...无水印视频 CDN 直链",
    "caption": "视频描述",
    "duration": 15000,
    "video_id": "7489328058390000000",
    "video_backup": ["https://...备用画质直链"],
    "images": [],
    "live_photo": [],
    "music": {
      "title": "背景音乐",
      "author": "音乐作者",
      "url": "https://...",
      "cover": "https://..."
    }
  }
}

播放与下载:直接使用 data.url(图集用 data.images[],音乐用 data.music.url)。网页端建议设置 referrerpolicy="no-referrer"
备用画质:data.video_backup[] · 注意:CDN 直链有时效,过期后需重新解析。

分平台接口

以下接口与聚合接口行为相同,推荐统一使用 /api/short_videos.php 自动识别平台:

平台接口路径
抖音/api/douyin.php?url=
快手/api/ksjx.php?url=
小红书/api/xhsjx.php?url=
哔哩哔哩/api/bilibili.php?url=
微博/api/weibo.php?url=
今日头条/api/toutiao.php?url=
最右 / 皮皮搞笑 / 皮皮虾 / 即梦/api/zuiyou.php/api/pipigx.php/api/ppxia.php/api/jimengai.php
视频号 / 聚合/api/short_videos.php?url=(推荐)

微信小程序对接

适用于自有小程序或「0毛去水印」类产品,通过 HTTPS 调用本站 API 完成全平台去水印解析。

1. 配置服务器域名(必做)

登录 微信公众平台,进入:

开发 → 开发管理 → 开发设置 → 服务器域名

将以下域名添加到小程序开发者后台(仅填写域名,不要带 https:// 或路径):

配置项填写域名用途
request 合法域名qsy.aiwyuw.cn调用解析等 API 接口
downloadFile 合法域名各平台 CDN 域名直链下载时需将 CDN 域名加入白名单
重要:请务必在微信开发者后台添加 qsy.aiwyuw.cn,否则小程序内 wx.request 会被微信拦截。域名需已完成 ICP 备案并支持 HTTPS。

2. 接口 Base URL

https://qsy.aiwyuw.cn/api

解析接口完整地址示例:

https://qsy.aiwyuw.cn/api/short_videos.php

3. 接入流程

  1. 在开发者后台配置 qsy.aiwyuw.cn 为 request 合法域名
  2. 调用 GET /api/short_videos.php?url=分享链接(无需 API Key)
  3. data.url CDN 直链播放;下载时将对应 CDN 域名加入 downloadFile 白名单
  4. 可选:注册账号获取 API Key,用于私有后端统计用量

4. 小程序请求示例

// 小程序 pages/parse/parse.js
const API_BASE = 'https://qsy.aiwyuw.cn/api';

async function parseWatermark(shareUrl) {
  return new Promise((resolve, reject) => {
    wx.request({
      url: `${API_BASE}/short_videos.php`,
      method: 'GET',
      data: { url: shareUrl },
      success(res) {
        if (res.data && res.data.code === 200) {
          resolve(res.data.data);
        } else {
          reject(res.data?.msg || '解析失败');
        }
      },
      fail: reject
    });
  });
}

parseWatermark('https://v.douyin.com/xxxxx/')
  .then(data => {
    // 播放:data.url  CDN 直链
    // 下载:wx.downloadFile({ url: data.url })
    console.log(data.url, data.cover, data.desc);
  });

5. 云函数转发示例(推荐)

API Key 放在云函数中更安全,小程序只调自己的云函数:

// 云函数 cloudfunctions/parse/index.js
const cloud = require('wx-server-sdk');
cloud.init();
const API_KEY = process.env.WATERMARK_API_KEY;

exports.main = async (event) => {
  const url = event.url;
  const https = require('https');
  const qs = new URLSearchParams({ url }).toString();
  const apiUrl = `https://qsy.aiwyuw.cn/api/short_videos.php?${qs}`;

  return new Promise((resolve, reject) => {
    https.get(apiUrl, { headers: { 'X-API-Key': API_KEY } }, (res) => {
      let body = '';
      res.on('data', chunk => body += chunk);
      res.on('end', () => resolve(JSON.parse(body)));
    }).on('error', reject);
  });
};

6. 常用接口一览

接口方法说明
/api/short_videos.phpGET聚合解析(推荐,公开)
/api/parse.phpGET / POST与聚合接口相同
/api/v1/parseGET / POST兼容旧路径
/api/platforms.phpGET支持平台列表
/api/douyin.phpGET分平台解析

7. 注意事项

代码示例

PHP

$url = 'https://v.douyin.com/xxxxx/';
$api = 'https://qsy.aiwyuw.cn/api/short_videos.php?url=' . urlencode($url);
$result = json_decode(file_get_contents($api), true);
print_r($result['data']['url']); // CDN 直链

JavaScript

const res = await fetch(
  'https://qsy.aiwyuw.cn/api/short_videos.php?url=' + encodeURIComponent(url)
);
const json = await res.json();
if (json.code === 200) {
  console.log(json.data.url);   // 视频 CDN 直链
  console.log(json.data.cover);
  console.log(json.data.desc);
}

Python

import requests
r = requests.get('https://qsy.aiwyuw.cn/api/short_videos.php', params={
    'url': 'https://v.douyin.com/xxxxx/'
})
print(r.json()['data']['url'])

cURL

curl "https://qsy.aiwyuw.cn/api/short_videos.php?url=https://v.douyin.com/xxxxx/"

错误码

code说明
200成功
400参数错误(链接无效)
502解析服务暂时不可用,请稍后重试
503解析接口未启用
500解析失败