• Ну и что вы думаете? Мы взяли и создали свой собственный чат, с блекджеком и шлюхами, теперь все легенды в одном месте: даже те 1000 человек, которых мы забанили в старом чате 🫡 Будем публиковать там очень интересные подробности нового дизайна форума, oh yeah

    Вступай и становись легендой, пока это не стало поздно: жмякай на меня, ток не сильно(

Исходник Телеграм бот (tiktok) (node.js)

Начинающий
Статус
Оффлайн
Регистрация
22 Июн 2024
Сообщения
75
Реакции[?]
1
Поинты[?]
1K
Всем привет! Сделал телеграм-бота для сохранения тиктоков. Для работы нужен токен (в боте BotFather создаете бота, и там будет его токен, который нужно вставить в код). Для работы бота добавляете бота в группу. Чтобы бот работал, можно залить на сервер или просто запустить на компьютере.

Чтобы бот работал, в консоли открываете директорию, например, с помощью команды cd Desktop (если на рабочем столе), затем переходите в папку, в которой будет находиться весь проект. После этого пишете: npm init -y и npm install axios node-telegram-bot-api

Затем в VS Code или в любом удобном для вас редакторе создаете файл (например, bot.js) и вставляете этот код. Чтобы запустить бота на своем ПК, в той же консоли пишете: node название_файла.js (например, node bot.js)

JavaScript:
const axios = require("axios");
const fs = require("fs");
const path = require("path");
const TelegramBot = require("node-telegram-bot-api");
const token = ' ';
const bot = new TelegramBot(token, { polling: true });
const downloadTikTokVideo = async (url, chatId) => {
    try {
        const { data } = await axios.get("https://tikwm.com/api/", { params: { url } });
        const videoUrl = data.data.play;
        let title = (data.data.title || "video").replace(/[\\\/:*?"<>|]/g, "_");
        const outputPath = path.join(__dirname, `${title}.mp4`);
        const videoStream = await axios.get(videoUrl, { responseType: "stream" });
        const writer = fs.createWriteStream(outputPath);
        videoStream.data.pipe(writer);
        writer.on("finish", async () => {
            try {
                await bot.sendVideo(chatId, outputPath, { caption: `Видео: ${title}` });
                fs.unlinkSync(outputPath);
            } catch (err) {
                console.error("Ошибка при отправке:", err.message);
            }
        });
        writer.on("error", (err) => console.error("Ошибка записи:", err));
    } catch (err) {
        console.error("Ошибка:", err.message);
    }
};
bot.on('message', (msg) => {
    const chatId = msg.chat.id;
    const messageText = msg.text || "";

    if (messageText.includes("tiktok.com") || messageText.includes("vm.tiktok.com")) {
        downloadTikTokVideo(messageText, chatId);
    }
});
console.log("Бот запущен...");
 
Сверху Снизу