Capcut Downloader

JavaScriptPublic
by zx-apiSep 2, 2026, 07:25 AMExpires: Never61 views
Capcut Downloader
Raw
1/* 
2 * Name: Capcut Downloader 
3 * Description: Capcut Download 
4 * Credit by zx
5 * Note: Kalau Mau di sher lagi kasih sumber/credit ya ๐Ÿ˜ก๐Ÿ˜ก
6 *
7 * Sumber: https://whatsapp.com/channel/0029VbDLqe7EquiSF4STU13o
8 *
9 * URL WEBSITE UPLOADER GRATIS: https://zfile.web.id/
10 * Website Uploader File Gratis yang bisa memberikan url public untuk mendownload File tersebut 
11 *
12*/
13
14const BASE_URL = 'https://3bic.com';
15
16const HEADERS = {
17  'Accept': 'application/json, text/plain, */*',
18  'Content-Type': 'application/json',
19  'User-Agent': 'Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/151.0.0.0 Mobile Safari/537.36',
20  'Referer': 'https://3bic.com/',
21  'Origin': 'https://3bic.com'
22};
23
24const CAPCUT_REGEX = [
25  /^https:\/\/(www\.)?capcut\.com\/watch\/\d+(.+)$/,
26  /^https:\/\/(www\.)?capcut\.com\/template-detail\/\d+(.+)$/,
27  /^https:\/\/(www\.)?capcut\.com\/t\/+(.+)$/,
28  /^https:\/\/(www\.)?capcut\.com\/tv2\/+(.+)$/
29];
30
31function isCapcut(url) {
32  return CAPCUT_REGEX.some(regex => regex.test(url));
33}
34
35async function scrapeCapcutDl(url) {
36  if (!isCapcut(url)) {
37    throw new Error('โŒ URL tidak valid. Pastikan URL berasal dari CapCut (capcut.com).');
38  }
39
40  const endpoint = `${BASE_URL}/api/download`;
41  
42  const response = await fetch(endpoint, {
43    method: 'POST',
44    headers: HEADERS,
45    body: JSON.stringify({ url })
46  });
47  
48  const data = await response.json();
49  
50  if (data.code === 200) {
51    const videoUrl = data.originalVideoUrl.startsWith('http') 
52      ? data.originalVideoUrl 
53      : `${BASE_URL}${data.originalVideoUrl}`;
54      
55    return {
56      success: true,
57      platform: 'CapCut',
58      title: data.title || 'No Title',
59      author: data.authorName || 'Unknown',
60      cover: data.coverUrl,
61      downloadLink: videoUrl
62    };
63  } else {
64    throw new Error(data.message || 'โŒ Gagal mengambil data video CapCut dari server.');
65  }
66}
67
68// contoh penggunaan 
69async function main() {
70  const targetLink = process.argv[2];
71
72  if (!targetLink) {
73    console.log("Cara pakai: node capcut-scraper.js <URL_CAPCUT>");
74    console.log("Contoh: node capcut-dl.js https://www.capcut.com/tv2/ZSVEwBgtH/");
75    return;
76  }
77
78  try {
79    console.log('๐ŸŸข Mendeteksi URL CapCut. Mengambil data...\n');
80    const result = await scrapeCapcutDl(targetLink);
81    
82    console.log('โœ… HASIL REQUEST CAPCUT:');
83    console.log('-----------------------------------');
84    console.log(`Judul   : ${result.title}`);
85    console.log(`Author  : ${result.author}`);
86    console.log(`Cover   : ${result.cover}`);
87    console.log(`Link DL : ${result.downloadLink}`);
88    console.log('-----------------------------------');
89  } catch (error) {
90    console.error(error.message);
91  }
92}
93
94main();
94 linesยท2,720 charsยท2.7 KB