UNPKG

@tobyg74/tiktok-api-dl

Version:

Scraper for downloading media in the form of videos, images and audio from Tiktok. Also for stalking Tiktok Users

52 lines (51 loc) 1.69 kB
"use strict"; var __importDefault = (this && this.__importDefault) || function (mod) { return (mod && mod.__esModule) ? mod : { "default": mod }; }; Object.defineProperty(exports, "__esModule", { value: true }); exports.CookieManager = void 0; const fs_1 = __importDefault(require("fs")); const path_1 = __importDefault(require("path")); class CookieManager { constructor() { const homeDir = process.env.HOME || process.env.USERPROFILE; const cookieDir = path_1.default.join(homeDir, ".tiktok-api"); if (!fs_1.default.existsSync(cookieDir)) { fs_1.default.mkdirSync(cookieDir, { recursive: true }); } this.cookieFile = path_1.default.join(cookieDir, "cookies.json"); this.cookieData = this.loadCookies(); } loadCookies() { try { if (fs_1.default.existsSync(this.cookieFile)) { const data = fs_1.default.readFileSync(this.cookieFile, "utf8"); return JSON.parse(data); } } catch (error) { console.error("Error loading cookies:", error); } return {}; } saveCookies() { try { fs_1.default.writeFileSync(this.cookieFile, JSON.stringify(this.cookieData, null, 2)); } catch (error) { console.error("Error saving cookies:", error); } } setCookie(value) { this.cookieData["tiktok"] = value; this.saveCookies(); } getCookie() { return this.cookieData["tiktok"] || null; } deleteCookie() { delete this.cookieData["tiktok"]; this.saveCookies(); } } exports.CookieManager = CookieManager;