Всем привет! По просьбе некоторых людей, я оставлю здесь эту штучку. Сегодня я вам покажу своего бота-первонаха, который, собственно, оставляет комментарии под постами в группах. Давайте приступим к самому коду.
Для начала нам нужно установить Node.js, гайды, надеюсь, сможете найти сами в интернете, а затем устанавливаете модуль vk-io в той же папке, в которой и будут находиться файлы index.js и config.js:
Или же, если Вы используете Yarn:
Далее для работы с самими файлами понадобится любой текстовый редактор, для меня это Visual Studio Code, так как в нём есть встроенная консоль, с которой мне намного удобнее работать, но если у вас нет Visual Studio Code, можете использовать любой текстовый редактор в перемешку с консолью (cmd).
Начнём с файла конфигурации - создадим файл (или скачаем, файлы будут в конце темы) config.js. В нём хранится вся нужна нам информация: ваш токен, ссылки на группы, фразы и миллисекунды.
Некоторые из вас могут задаться вопросом: "как получить токен от страницы?". Объясняю. Заходим на
Далее создадим (или скачаем) файл index.js, в нём будет построена вся логика бота, которая нам не интересна:
ВАЖНО, чтобы файлы находились в одной папке или просто находились рядом.
После всех проделанных манипуляций просто запускаем файл index.js, написав в консоли/терминале:
Собственно, вот и всё! Теперь, если вы знаете как установить бота на сервер, можете поставить его на сервер и бот будет работать 24/7! Это самая простая версия бота-первонаха, так что если вы хорошо знаете Node.js, вы можете переделать некоторые моменты в коде либо же вообще переписать его и добавить своё!
Файлы:
В комментариях можете оставлять вопросы, если у вас появились какие-нибудь ошибки, постараюсь ответить!
Для начала нам нужно установить Node.js, гайды, надеюсь, сможете найти сами в интернете, а затем устанавливаете модуль vk-io в той же папке, в которой и будут находиться файлы index.js и config.js:
npm install vk-io --save
Или же, если Вы используете Yarn:
yarn add vk-io
Далее для работы с самими файлами понадобится любой текстовый редактор, для меня это Visual Studio Code, так как в нём есть встроенная консоль, с которой мне намного удобнее работать, но если у вас нет Visual Studio Code, можете использовать любой текстовый редактор в перемешку с консолью (cmd).
Начнём с файла конфигурации - создадим файл (или скачаем, файлы будут в конце темы) config.js. В нём хранится вся нужна нам информация: ваш токен, ссылки на группы, фразы и миллисекунды.
JavaScript:
let TOKEN = 'Здесь будет ваш токен.'; // токен
let GROUPS = ['https://vk.com/group', 'https://vk.com/group']; // ссылки на группы
let PHRASES = ['Message 1', 'Message 2']; // сообщения, которые бот будет оставлять под постом
let MILLISECONDS = 1000; // через сколько обновлять новости (в миллисекундах)
module.exports = {
TOKEN,
GROUPS,
PHRASES,
MILLISECONDS,
};
Некоторые из вас могут задаться вопросом: "как получить токен от страницы?". Объясняю. Заходим на
Пожалуйста, авторизуйтесь для просмотра ссылки.
vkhost, нажимаем на кнопку VK API, подтверждаем и копируем всё, что находится после слов access_token= и перед знаком &:Далее создадим (или скачаем) файл index.js, в нём будет построена вся логика бота, которая нам не интересна:
JavaScript:
let { VK } = require('vk-io');
let sample = (array) => array[Math.round(array.length * Math.random())];
let { TOKEN, GROUPS, PHRASES, MILLISECONDS } = require('./config');
let vk = new VK({
token: TOKEN,
});
console.log('> Бот запущен.');
let commented = [];
let ids = [];
(async () => {
ids = await Promise.all(GROUPS.map(async (link) => {
let res = await vk.snippets.resolveResource(link);
if (!res || res.type !== 'group') throw new Error('Ссылка должна вести на группу');
return -res.id;
}));
})();
setInterval(async () => {
let { items } = await vk.api.newsfeed.get({ filters: 'post', count: 1 });
let post = items[0];
if (!ids.includes(post.source_id) || commented.includes(post.post_id)) return;
let message = sample(PHRASES);
commented.push(post.post_id);
await vk.api.wall.createComment({ owner_id: post.source_id, post_id: post.post_id, message });
console.log(`> Был оставлен комментарий <<${message}>>`);
}, MILLISECONDS);
ВАЖНО, чтобы файлы находились в одной папке или просто находились рядом.
После всех проделанных манипуляций просто запускаем файл index.js, написав в консоли/терминале:
node index.js
.Собственно, вот и всё! Теперь, если вы знаете как установить бота на сервер, можете поставить его на сервер и бот будет работать 24/7! Это самая простая версия бота-первонаха, так что если вы хорошо знаете Node.js, вы можете переделать некоторые моменты в коде либо же вообще переписать его и добавить своё!
Файлы:
Пожалуйста, авторизуйтесь для просмотра ссылки.
Пожалуйста, авторизуйтесь для просмотра ссылки.
В комментариях можете оставлять вопросы, если у вас появились какие-нибудь ошибки, постараюсь ответить!