We got this video for you so that you don’t need to spend your time in the search.
Учимся разработке простейшего бота для ВКонтакте на языке PHP.
Поднимаем и хостим всё это in Heroku.
В качестве примера – бот математик.
► Наша группа Вконтакте: https://www.vk.com/howdyho_net
► Наш Telegram чат: https://t.me/howdyho
? Подумываешь прикупить себе игру?
St чучшие цены ? на игры The steam ? и рандомы ? только здесь –
https://bit.ly/SteamAlmostFreeGames
+50 к удаче если ты:
✅ Подписался
✅ Поставил лайк
✅ Оставил комментарий
? Ссылки из видео ?
0️⃣ https://heroku.com
1️⃣ https://vk.com/dev/callback_api
2️⃣ https://github.com/denissimon/formula-parser
3️⃣ https://github.com/heroku/php-getting-started
4️⃣ Получившийся бот: https://vk.com/public158191382
? Реквизиты для донатства (WebMoney) ?
Как сделать бота ВКонтакте на PHP?
R250434217196
Z252920168434
U415267612522
? Музыкальный трек предоставлен YouTube Audio Library. .
This content was first published here.
We inserted this video based on certain parameters as on date of insertion. Few of them are below.
Источник: webdesigntips.blog
Как создать бот-комментатор для VK на PHP своими руками
Комментарии — одна из важнейших метрик активности паблика в любой социальной сети. Кроме того, комментарии — отличное место для скрытой рекламы. Бот-комментатор — отличное решение для тех, кто не хочет тратить уйму времени на ручное комментирование постов. Конкретно в этом материале мы расскажем, как автоматизировать написание комментариев для VK. *Спойлер: исходный код бота для создания комментариев VK находится в конце статьи.
Какие задачи решает бот-комментатор
- Создать имитацию активности пользователей.
- Улучшить ранжирование за счет повышения активности в паблике.
- Рисовать красивую статистику для реклов.
- Вовлекать реальных людей за счет комментариев-байтов.
Во-вторых, его можно использовать в чужих пабликах, для того чтобы:
- Продвигать рекламируемые офферы напрямую (закончится баном, но можно).
- Продвигать рекламируемые офферы косвенно — человек видит комментарий, переходит на страницу и там попадает в воронку.
- Продвигать паблики — человек видит комментарий, переходит на страницу, видит репост из интересующего его паблика и подписывается.
В-третьих, никто не запрещает использовать его для комментирования стен пользователей, правда для этого предварительно нужно будет собрать базу таких страничек. Для этого вы можете использовать наш бот-парсер страниц VK:
7 минут на прочтение статьи
Помимо всего прочего, исходный код бота можно «разобрать на запчасти» для реализации других задач, не связанных с комментариями, но привязанных к необходимости регулярного получения той информации, которую VK не передает через Longpoll и Callback. Впрочем, если вы не поняли, о чем сейчас идет речь, вам это вряд ли понадобится 🙂
Принцип работы бота для написания комментариев в VK
Бот работает следующим образом:
- Открывает php-страницу в браузере.
- Считывает токен пользователя, от имени которого будут публиковаться комментарии.
- Считывает массив с id-адресами целевых страниц из перечня пабликов.
- Поочередно заходит на каждую страницу/группу.
- Запоминает id самого первого поста.
- Проверяет, не является ли первый пост закрепленным. Если является — делает смещение на один пост.
- Выбирает случайный комментарий из словаря.
- Публикует комментарий под постом.
- Возвращается к шагу 4, до тех пор пока не переберет все страницы.
Пошаговая инструкция, как создать бот-комментатор для пабликов VK
Итак, чтобы создать бот для комментариев VK на php своими руками, необходимо сделать следующее:
- Получить токен VK (советуем VK Admin) и сохранить его в отдельный файл. Учтите, что токен дает полный доступ к странице — не используйте личные либо коммерчески важные профили.
- Скачать и установить Denwer.
- Перейти в папку C:WebServershomelocalhostwww
- Создать в ней рабочую директорию нашего бота. В нашем примере ей будет vkcomments
- Создать файл index.php в папке C:WebServershomelocalhostwwwvkcomments
- Открыть его любым текстовым редактором и вставить следующий код:
$v=’5.131′;
$tokenFile = ‘token.txt’;
if (!file_exists($tokenFile))
$fp = fopen(«token.txt», «a»);
fwrite($fp, «»);
fclose($fp);
$access_token = file_get_contents(‘token.txt’);
echo iconv(«utf-8», «windows-1251», ‘
*Обратите внимание! Для корректной работы скрипта необходимо придерживаться установленного формата ввода данных.
Выберите файл со списком ID:
if (isset($_POST[«access_token»]) !empty($_POST[«access_token»]))
$access_token = $_POST[«access_token»];
file_put_contents(«token.txt», $access_token);
> elseif (file_exists(«token.txt»))
$access_token = file_get_contents(«token.txt»);
die(«Токен не задан!»);
$arr = file(«log.txt»);
$count_log = count($arr);
echo nl2br(urldecode(iconv(«utf-8», «windows-1251», $arr[$log])));
echo «
«;
$log=$log+1;
echo «
«;
echo «
«;
$user = json_decode(file_get_contents(‘https://api.vk.com/method/users.get?v=’.$v));
$user_id = $user->response[0]->id;
$first_name = $user->response[0]->first_name;
$last_name = $user->response[0]->last_name;
echo «
«;
echo «
«;
$targetFile = «targets.txt»;
$ids = «»;
if (isset($_FILES[‘id_file’]) $_FILES[‘id_file’][‘error’] === UPLOAD_ERR_OK)
$fileContent = file($_FILES[‘id_file’][‘tmp_name’], FILE_IGNORE_NEW_LINES);
$ids = array_map(‘trim’, $fileContent);
> elseif (file_exists($targetFile))
$fileContent = file($targetFile, FILE_IGNORE_NEW_LINES);
$ids = array_map(‘trim’, $fileContent);
die(«Файл с целевыми ID не найден!»);
$ids = preg_replace(‘/rn/’, », $ids);
$count_ids = count($ids);
echo «
«;
$owner_id = $ids[$i];
str_replace(» rn», «», $owner_id);
$pin=$result->response->items[0]->is_pinned;
$post_id=$result->response->items[0]->id;
$preview=$result->response->items[0]->text;
if (empty($preview))
$preview=»Пост без текста, либо репост»;
if (!file_exists(«$owner_id.txt»))
$fp = fopen(«$owner_id.txt», «w»);
fwrite($fp, «»);
fclose($fp);>
$lastid = htmlentities(file_get_contents(«$owner_id.txt»));
if ($lastid!=$post_id)
$comments = file(‘comments.txt’);
$message = $comments[array_rand($comments)];
$message = preg_replace(‘/rn/’, », $message);
unset($comments);
echo(iconv(«utf-8», «windows-1251», $message));
$comment_id=$comment_id->response->comment_id;
echo «
«;
$fp = fopen(«$owner_id.txt», «w»);
fwrite($fp, $post_id);
fclose($fp);
$log_post_url=str_replace(«‘.», «», $log_post_url);
$log_post_url=str_replace(«.'», «», $log_post_url);
$log_post_text=$preview;
$log_comment_url=str_replace(«‘.», «», $log_comment_url);
$log_comment_url=str_replace(«.'», «», $log_comment_url);
$log_comment_text=$message;
$fp = fopen(«log.txt», «a»);
fwrite($fp, «$log_separatorn$log_post_urln$log_post_textn$log_comment_urln$log_comment_textn$log_separator»);
fclose($fp);
echo «
«;
$i=$i+1;
- Сохранить файл.
- Создать файл comments.txt.
- Записать фразы, которые будут использоваться ботом для комментирования. Каждая фраза — с новой строки. Убедиться, что последняя строка не пустая (каретка набора текста должна быть в конце последнего комментария, а не в начале пустой строки).
- Сохранить файл.
- Создать файл targets.txt.
- Указать ID страниц или пабликов, под постами которых будут публиковаться комментарии. Каждый ID — с новой строки. Убедиться, что последняя строка не пустая. Также обратите внимание, что ID пабликов должны начинаться с «-» — знака минус.
- Сохранить файл.
- Запустить Denwer с ярлыка на рабочем столе.
- Открыть в браузере адрес http://127.0.0.1/vk/comments
- Вставить токен в поле токен.
- Нажать «Поехали!»
- Проверить результат.
Опционально можно также просмотреть лог оставленных комментариев.
Важные моменты
В прошлых ботах мы использовали python в качестве языка программирования и сервис pythonanywhere в качестве сервера. Однако ввиду отсутствия в API VK Longpoll-методов и Callback-методов для «прослушивания стен», а также ввиду отсутствия возможности регулярного автозапуска бота на сервере pythonanywhere при бесплатном тарифе, мы решили использовать php и denwer-сервер.
Denwer — простое и бесплатное решение, более чем подходящее для нашей задачи «в базовой» настройке. То есть вам не придется ковыряться в настройках сервера — достаточно просто скачать и установить Denwer.
Стандартные инструменты Denwer не позволяют автоматизировать выполнение задач подобно cron, но для этой цели можно использовать любое браузерное расширение с автообновлением страниц/вкладок. При использовании полноценного сервера, а не бесплатного варианта вроде Denwer, достаточно настроить cron или другого демона.
Естественно, при чрезмерной активности алгоритмы VK «обратят внимание» на используемую вами страничку и оставляемые ею комментарии. Поэтому мы рекомендуем тщательно продумывать, какие комментарии будет оставлять ваш бот, делать их максимально универсальными и обновлять словарь хотя бы раз в 1–2 недели. Кроме того, чем больше комментариев будет в словаре, тем ниже шанс, что они будут повторяться.
При комментировании с нескольких страниц советуем использовать антидетект-браузер и vpn для каждого профиля, от имени которого будут оставаться комментарии.
Демонстрация работы бота
Запуск впервые — во всех пабликах из списка оставлен комментарий:
Запускаем второй раз — бот не оставляет комментарии, так как новых постов в пабликах из списка нет (параллельно создаем 2 новых поста в 2 пабликах):
Запуск третий раз — бот оставил комментарии лишь в тех пабликах, где появились посты «тест2» :
Автоматизируем создание комментариев
Если вам лень раз в час нажать F5, можно использовать любое браузерное расширение для автоматической перезагрузки вкладок.
Ставим автообновление на 30 секунд и создаем посты «тест3»:
Дожидаемся, пока расширение обновит вкладку:
Затем просто идем по своим делам — расширение будет запускать скрипт само:
Исходный код бота для комментариев
Подводя итоги
Как видите, автоматизация процесса создания комментариев не так сложна, как может показаться. Причем для этого вовсе не обязательно платить разработчикам либо приобретать платные тарифы в каких-либо сервисах.
Источник: trafficcardinal.com
Как создать простого бота для Телеграм на PHP
Создадим простого бота для мессенджера Telegram с использованием PHP. Данная статья создана исключительно в поучительных целях и не претендует на полноту или правильность подхода. Весь код бота очень простой и может быть освоен начинающими PHP-разработчиками.
Предупреждаю сразу профессионалов и перфекционистов от программирования — вам здесь делать нечего . Никаких фреймворков и гитхабов! Все будет очень просто и примитивно, но работать будет. И это главное. Всем счастья
Шаг 1: подготовка
Что нам понадобится:
- Веб-сервер с работающим PHP 5.6 и выше — не локальный веб-сервер, а веб-сервер на хостинге, что важно! Так как сервисы Telegram должны будут видеть вашего бота по внешней URL-ссылке;
- Веб-сервер должен работать через https — то есть на веб-сервере должен быть установлен давно (больше суток назад) зарегистрированный SSL-сертификат. Достаточно будет бесплатного Let’s Encrypt SSL-сертификата;
- Доступ к файлам на этом сервере, конечно же — иначе как мы что-то сделаем;
- Установленная кодовая страница UTF-8 на сервере по-умолчанию или добавьте в файл .htacces в корне сайта строку AddDefaultCharset utf-8;
- Аккаунт в мессенджере Telegram;
Шаг 2. Регистрация вашего бота в Телеграм
Да, да. Бот еще даже не создан, но перед этим его уже нужно зарегистрировать, чтобы получить уникальный идентификатор, чтобы в дальнейшем обращаться к BOT API Telegram.
Шаг 3. Создаем код бота
Будем делать прямо в корне сервера (не самый верный подход, можно создать папку bot, а в ней уже файл verysimple_bot.php). Для этого на сервере создадим файл verysimple_bot.php в котором и будет весь код бота. Не забываем, что весь код в файле verysimple_bot.php должен быть в кодировке UTF-8.
Для редактирования файлов кода и заброске их на сервер удобно использовать FAR Manager — в нем есть и подсветка синтаксиса и FTP/SFTP клиент для копирования файла на сервер.
Делаем заготовку бота, который сможет выдавать список команд и информацию о нас:
Шаг 4. Делаем WebHook и конкретизируем код бота
-
Чтобы все заработало, нужно сособщить сервису Телеграм, что наш бот лежит там-то — используй его код для такого-то бота verysimple_bot.
Для этого нужно сформировать ссылку, которая называется WebHook и её мы и сообщим телеграму:
https://api.telegram.org/bot 1234567899:AAKJhkkjhkjhKhKhjkhkhk_kJhgkjhJhgjghjhG /setWebhook?url= https://www.mysite.ru/verysimple_bot.php
Не забываем где красное заменяем на свои данные!
Как сформируете эту ссылку — вставьте её в браузер и запустите!
- Пользователь в диалоге с ботом пишет запрос, например /help
- Telegram Bot API через WebHook, что мы установили, берет этот запрос и отправляет в код бота
- Мы в боте получаем его, анализируем, видим например, /help и через Telegram Bot API и
функцию message_to_telegram отправляем ответ — который появлется в диалоге как ответ бота.
Шаг 5. Добавим возможность делать заявки через бота
Заявкой будем считать сообщение или вопрос, которое можно будет отправить через нашего бота какому-то пользователю, назовем его менеджер компании. То есть нам нужно организовать такую цепочку:
- Пользователь запрашивает у бота «Оставить заявку», например набрав команду /order
- Бот входит в режим ожидания текста Заявки
- Если пользователь ввел текст и нажал Enter, только тогда отослать это сообщение заранее запрограммированному по менеджеру компании.
Получим идентификатор chat_id пользователя кому нужно отсылать заявки:
- Помните наш файл message.txt — вот он сейчас понадобится
- Присоединяемся к нашему боту тем пользователем, кому будем слать заявки (менеджер компании)
- Сразу открываем файл message.txt и смотрим блок: [chat]
$order_chat_id = ‘123456789’; //chat_id менеджера компании для заявок $bot_state = »; // состояние бота, по-умолчанию пустое
Сохраняем состояние бота для каждого пользователя
Далее, важный момент: у нас любой присоединившийся пользователь сможет сделать заявку, и чтобы бот понимал, что находится в режиме ввода заявки именно с этим пользователем, мы должны сохранять и считывать состояния бота для каждого пользователя отдельно!
Напишем две функции: set_bot_state($chat_id, $data) и get_bot_state($chat_id) — которые сохраняют текущее состояние бота и получают соответсвенно, для нужного пользователя. Сохранять будем в подпапке /users на сервере, которую создадим предварительно не забыв дать права на запись. Состояния будут хранится все в тех же текстовых файлах с именами chat_id пользователей и содержать последнюю команду:
// сохранить состояние бота для пользователя function set_bot_state ($chat_id, $data) < file_put_contents(__DIR__ . ‘/users/’.$chat_id.’.txt’, $data); >// получить текущее состояние бота для пользователя function get_bot_state ($chat_id) < if (file_exists(__DIR__ . ‘/users/’.$chat_id.’.txt’)) < $data = file_get_contents(__DIR__ . ‘/users/’.$chat_id.’.txt’); return $data; >else < return »; >>
Теперь дополним код бота, добавив запись и отлов состояния и отправив заявку менеджеру компании, если состояние отправки заявки.
Шаг 6. Регистрация команд бота
Вот и все — простой бот работает! Всем спасибо, если дочитали и что-то заработало.
Николай Комарков
Источник: www.novelsite.ru