logo NexAPI
← 返回 API 列表

API 详情

短视频/图集解析聚合(v2)

抖音、快手、豆包、小红书、皮皮虾20+平台解析

ANY API-KEY 分类:工具 限流 120 / 分钟

用量与额度

免费:日 200 / 月 6,000

超额 5 积分 / 次 当前积分 --

登录后可查看当前账号的用量与剩余额度。

免费额度用尽后才会扣除;未设置单价(0)则超额直接拒绝。

完整请求 URL

可直接在浏览器、终端或调试工具中调用

https://api.avrinbai.cn/api/tools/video-no-watermark-v2

接口说明

支持:

  • 视频无水印解析
  • 图集解析
  • 图集 LivePhoto(若平台支持)

支持平台

图集(images)

  • 抖音(douyin
  • 快手(kuaishou
  • 小红书(redbook
  • 豆包图片(doubao/thread/
  • 皮皮虾(pipixia
  • 微博(weibo

图集 LivePhoto(images[].live_photo_url)

  • 小红书(redbook
  • 抖音(douyin

视频(video_url)

  • 豆包视频(doubao/video-sharing
  • 小红书(redbook
  • 皮皮虾(pipixia
  • 抖音短视频(douyin
  • 皮皮搞笑(pipigaoxiao
  • 快手短视频(kuaishou
  • 微视短视频(weishi
  • 西瓜视频(xigua
  • 最右(zuiyou
  • 梨视频(lishipin
  • 度小视(原全民)(quanmin
  • 逗拍(doupai
  • 微博视频(weibo
  • 绿洲(lvzhou
  • 全民K歌(quanminkge
  • 6间房(sixroom
  • 美拍(meipai
  • 新片场(xinpianchang
  • 好看视频(haokan
  • 虎牙(huya
  • AcFun(acfun
  • 哔哩哔哩(bilibili

请求(分享链接解析,推荐)

POST /api/tools/video-no-watermark-v2
GET /api/tools/video-no-watermark-v2?url=视频分享链接

支持直接传分享文本(会自动提取其中的链接):

POST /api/tools/video-no-watermark-v2(body: text=...
GET /api/tools/video-no-watermark-v2?text=...

请求(按视频 ID 解析,可选)

GET /api/tools/video-no-watermark-v2?mode=id&source=douyin&video_id=xxxx

参数

参数 必填 说明
url 分享链接(或带链接的文本)
text 分享文本(含链接)
mode share(默认)/ id
source mode=id 时必填 平台标识(如 douyin/kuaishou/redbook 等)
video_id mode=id 时必填 视频 ID

响应

统一返回 code/msg/data

  • data.author.uid/name/avatar
  • data.title
  • data.video_url
  • data.music_url
  • data.cover_url
  • data.images[](图集)
  • data.images[].url
  • data.images[].live_photo_url

在线调试

通过本站代发请求。GET 时会把 JSON 中的键值作为 Query,非 GET 时作为 JSON Body.

选择已创建的 API Key 需要先登录。 去登录

示例代码

提示:把 YOUR_API_KEY 替换为真实 API Key。

// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
const payload = {
    "url": "https:\/\/v.douyin.com\/xxxx\/"
};

const url = 'https://api.avrinbai.cn/api/tools/video-no-watermark-v2';

const headers = {
  "Accept": "application/json",
  "Content-Type": "application/json",
  "X-API-Key": "YOUR_API_KEY",
};

const res = await fetch(url, {
  method: "ANY",
  headers,
  body: JSON.stringify(payload),
});

// 兼容返回 JSON / 纯文本 / 二进制
const contentType = res.headers.get("content-type") || "";
if (contentType.includes("application/json")) {
  console.log(await res.json());
} else {
  console.log(await res.text());
}
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
import axios from "axios";

const payload = {
    "url": "https:\/\/v.douyin.com\/xxxx\/"
};

const headers = {
  "Accept": "application/json",
  "X-API-Key": "YOUR_API_KEY",
};

const url = "https://api.avrinbai.cn/api/tools/video-no-watermark-v2";

const res = await axios.request({
  url,
  method: "ANY",
  headers,
  data: payload,
  // responseType: "arraybuffer", // 若接口返回图片/音视频,可按需开启
});

console.log(res.status, res.data);
# ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
import requests

payload = {
    "url": "https:\/\/v.douyin.com\/xxxx\/"
}

headers = {
    "Accept": "application/json",
}
headers["X-API-Key"] = "YOUR_API_KEY"

res = requests.request(
    "ANY",
    "https://api.avrinbai.cn/api/tools/video-no-watermark-v2",
    headers=headers,
    json=payload,
    timeout=25,
)

print(res.status_code)
print(res.text)
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "io"
    "net/http"
    "net/url"
)

func main() {
    payload := map[string]any{
    "url": "https:\/\/v.douyin.com\/xxxx\/"
}

    targetURL := "https://api.avrinbai.cn/api/tools/video-no-watermark-v2"

    b, _ := json.Marshal(payload)
	body := bytes.NewReader(b)

    req, _ := http.NewRequest("ANY", targetURL, body)
    req.Header.Set("Accept", "application/json")
    req.Header.Set("Content-Type", "application/json")
    req.Header.Set("X-API-Key", "YOUR_API_KEY")

    client := &http.Client{}
    res, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer res.Body.Close()

    raw, _ := io.ReadAll(res.Body)
    fmt.Println(res.StatusCode)
    fmt.Println(string(raw))
}
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
package main

import (
    "bytes"
    "encoding/json"
    "fmt"
    "io"
    "net/http"
    "net/url"
)

func main() {
    payload := map[string]any{
    "url": "https:\/\/v.douyin.com\/xxxx\/"
}

    targetURL := "https://api.avrinbai.cn/api/tools/video-no-watermark-v2"

    b, _ := json.Marshal(payload)
	body := bytes.NewReader(b)

    req, _ := http.NewRequest("ANY", targetURL, body)
    req.Header.Set("Accept", "application/json")
    req.Header.Set("Content-Type", "application/json")
    req.Header.Set("X-API-Key", "YOUR_API_KEY")

    client := &http.Client{}
    res, err := client.Do(req)
    if err != nil {
        panic(err)
    }
    defer res.Body.Close()

    raw, _ := io.ReadAll(res.Body)
    fmt.Println(res.StatusCode)
    fmt.Println(string(raw))
}
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
import okhttp3.*;

public class Demo {
  public static void main(String[] args) throws Exception {
    OkHttpClient client = new OkHttpClient();
    String payloadJson = {"url":"https:\/\/v.douyin.com\/xxxx\/"};

    String url = "https://api.avrinbai.cn/api/tools/video-no-watermark-v2";
    RequestBody body = RequestBody.create(payloadJson, MediaType.parse("application/json"));

    Request request = new Request.Builder()
        .url(url)
        .method("ANY", body)
        .addHeader("Accept", "application/json")
        .addHeader("Content-Type", "application/json")
        .addHeader("X-API-Key", "YOUR_API_KEY")
        .build();

    try (Response response = client.newCall(request).execute()) {
      System.out.println(response.code());
      System.out.println(response.body() != null ? response.body().string() : "");
    }
  }
}
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
import okhttp3.*;

public class Demo {
  public static void main(String[] args) throws Exception {
    OkHttpClient client = new OkHttpClient();
    String payloadJson = {"url":"https:\/\/v.douyin.com\/xxxx\/"};

    String url = "https://api.avrinbai.cn/api/tools/video-no-watermark-v2";
    RequestBody body = RequestBody.create(payloadJson, MediaType.parse("application/json"));

    Request request = new Request.Builder()
        .url(url)
        .method("ANY", body)
        .addHeader("Accept", "application/json")
        .addHeader("Content-Type", "application/json")
        .addHeader("X-API-Key", "YOUR_API_KEY")
        .build();

    try (Response response = client.newCall(request).execute()) {
      System.out.println(response.code());
      System.out.println(response.body() != null ? response.body().string() : "");
    }
  }
}
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        var payloadJson = {"url":"https:\/\/v.douyin.com\/xxxx\/"};

        using var client = new HttpClient();
        var url = "https://api.avrinbai.cn/api/tools/video-no-watermark-v2";
        using var request = new HttpRequestMessage(new HttpMethod("ANY"), url);
        request.Headers.Add("Accept", "application/json");
        request.Headers.Add("X-API-Key", "YOUR_API_KEY");
        request.Content = new StringContent(payloadJson, Encoding.UTF8, "application/json");

        using var response = await client.SendAsync(request);
        var body = await response.Content.ReadAsStringAsync();
        Console.WriteLine((int)response.StatusCode);
        Console.WriteLine(body);
    }
}
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2
using System;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;

class Program
{
    static async Task Main()
    {
        var payloadJson = {"url":"https:\/\/v.douyin.com\/xxxx\/"};

        using var client = new HttpClient();
        var url = "https://api.avrinbai.cn/api/tools/video-no-watermark-v2";
        using var request = new HttpRequestMessage(new HttpMethod("ANY"), url);
        request.Headers.Add("Accept", "application/json");
        request.Headers.Add("X-API-Key", "YOUR_API_KEY");
        request.Content = new StringContent(payloadJson, Encoding.UTF8, "application/json");

        using var response = await client.SendAsync(request);
        var body = await response.Content.ReadAsStringAsync();
        Console.WriteLine((int)response.StatusCode);
        Console.WriteLine(body);
    }
}
<?php
// ANY https://api.avrinbai.cn/api/tools/video-no-watermark-v2

$payload = json_decode('{\"url\":\"https:\\/\\/v.douyin.com\\/xxxx\\/\"}', true) ?: [];

$apiKey = 'YOUR_API_KEY';

$ch = curl_init();

if (in_array('ANY', ['GET', 'HEAD'], true)) {
    $url = 'https://api.avrinbai.cn/api/tools/video-no-watermark-v2' . (count($payload) ? ('?' . http_build_query($payload)) : '');
} else {
    $url = 'https://api.avrinbai.cn/api/tools/video-no-watermark-v2';
}

curl_setopt_array($ch, [
    CURLOPT_URL => $url,
    CURLOPT_CUSTOMREQUEST => 'ANY',
    CURLOPT_RETURNTRANSFER => true,
    CURLOPT_HEADER => true,
    CURLOPT_TIMEOUT => 25,
]);

$headers = [
    'Accept: application/json',
];
$headers[] = 'X-API-Key: ' . $apiKey;

if (! in_array('ANY', ['GET', 'HEAD'], true)) {
    $body = json_encode($payload, JSON_UNESCAPED_UNICODE);
    $headers[] = 'Content-Type: application/json';
    curl_setopt($ch, CURLOPT_POSTFIELDS, $body);
}

curl_setopt($ch, CURLOPT_HTTPHEADER, $headers);

$raw = curl_exec($ch);
if ($raw === false) {
    throw new RuntimeException('cURL error: ' . curl_error($ch));
}

$status = curl_getinfo($ch, CURLINFO_HTTP_CODE);
$headerSize = curl_getinfo($ch, CURLINFO_HEADER_SIZE);

$rawHeaders = substr($raw, 0, $headerSize);
$rawBody = substr($raw, $headerSize);

curl_close($ch);

echo "HTTP {$status}\n";
echo $rawHeaders . "\n";
echo $rawBody;
curl -sS -X ANY \
  -H "Content-Type: application/json" \
  -H "X-API-Key: YOUR_API_KEY" \
    "https://api.avrinbai.cn/api/tools/video-no-watermark-v2" \
  -d '{"url":"https:\/\/v.douyin.com\/xxxx\/"}'