#!/usr/bin/env node // 生成YouTube OAuth token并自动添加到cookies.json import { readFileSync, writeFileSync, existsSync } from 'fs'; import { resolve, dirname } from 'path'; import { fileURLToPath } from 'url'; const __dirname = dirname(fileURLToPath(import.meta.url)); const cookiesPath = resolve(__dirname, '../cookies.json'); console.log(`======> [setup-youtube-auth] Starting YouTube OAuth setup`); console.log(`======> [setup-youtube-auth] Cookies file: ${cookiesPath}`); // 检查cookies.json是否存在 if (!existsSync(cookiesPath)) { console.log(`======> [setup-youtube-auth] Creating new cookies.json file`); const defaultCookies = { "instagram": ["mid=; ig_did=; csrftoken=; ds_user_id=; sessionid="], "instagram_bearer": ["token=", "token=IGT:2:"], "reddit": ["client_id=; client_secret=; refresh_token="], "twitter": ["auth_token=; ct0="], "youtube_oauth": ["access_token=; refresh_token=; expires_in="] }; writeFileSync(cookiesPath, JSON.stringify(defaultCookies, null, 2)); } console.log(`======> [setup-youtube-auth] Running YouTube token generator...`); console.log(`======> [setup-youtube-auth] IMPORTANT: Please follow the authentication instructions carefully`); // 导入并运行YouTube token生成器 import('./src/util/generate-youtube-tokens.js').then(() => { console.log(`======> [setup-youtube-auth] OAuth token generation completed`); console.log(`======> [setup-youtube-auth] Please copy the generated token to ${cookiesPath}`); console.log(`======> [setup-youtube-auth] Replace the youtube_oauth array content with the generated token`); }).catch(err => { console.error(`======> [setup-youtube-auth] Failed to generate token:`, err); process.exit(1); });