Как сделать свой скрипт ВК

Идеально чтобы разобраться в принципах работы. Все показано на примерах, во время урока создал простой чеккер gmail(зарегистрирована почта или нет).

Описание интерфейса редактора скрипта.

Описание действий, редактор сценария.

Работа с браузером в BAS.

Поиск элемента по изображению.

Лог, отлов ошибок, id действия.

Настройки браузера и кнопки скролла.

Ожидание загрузки страницы.

Пользовательский интерфейс, ресурсы.

Как исправить «зависания» скрипта.

Создание автономного бота. Компиляция.

Урок #2. Селекторы. Поиск элементов. Парсер ленты twitter.

Все что нужно знать для создания парсера. Снова много примеров, создал парсер картинок из ленты twitter. Тем, кому не нужно парсить сложные страницы, можно смотреть до 26 минуты.

Введение в селекторы. Входной параметр «Селектор элемента».

Составление селекторов для элементов со сменным id.

Настройки поведения БАС в случае ошибки поиска элемента.

Поиск элемента по координатам.

КАК НАПИСАТЬ СВОЙ AHK? (ПРОСТОЙ МАНУАЛ)

Немного о формате html. Селекторы css.

Парсер твиттов из ленты.

Парсер картинок из твиттов. Вложенные селекторы.

Поиск элементов внутри фрейма.

Поиск по изображению.

Урок #3. Ресурсы. Работа с файлами в многопотоке.

В видео рассмотрены все тонкости в работе с данными через систему ресурсов: чтение и запись в файлы, в том числе в режиме многопоточности, пользовательский интерфейс, распределение прокси между потоками.

Описание системы ресурсов.

Ресурс типа «строка».

Получение значения ресурса на стороне разработчика.

Ресурс типа «число».

Ресурс типа «случайное число».

Ресурс типа «генератор строк». Spintax.

Ресурс типа «Из файла». Чтение файлов.

Запись в файл выбранный пользователем.

Режимы чтения файлов. Работа со строками из нескольких потоков.

Работа с файлами(изображениями) из папки в режиме многопотока.

Обработка ошибок при использовании ресурсов.

Получение нескольких ресурсов в одном потоке.

Работа с прокси. Проверка прокси на валидность.

Дополнительные настройки ресурсов.

Ручное удаление строк из файла.

Выполнение действий в начале работы скрипта(перед запуском потоков).

Парсинг файлов со сложным форматом в ресурс. Конструктор регулярных выражений.

Ресурсы с несколькими типами.

Внешний вид пользовательского интерфейса.

Ресурс типа «Список».

Основы конструктора javascript выражений.

Условная видимость ресурсов.

Урок #4. Переменные. Использование javascript.

Это важное видео, в нем рассказывается о переменных, о формате выражений, о том, как использовать javascript код в BAS.

Что такое переменные.

Переменные как результат работы действий, инспектор переменных.

Создание переменных разных типов.

Входные параметры типа expression.

Использование javascript функций.

Получения типа переменной.

Преобразование типов. Пример, получения числа лайков на странице.

Как сделать свой сайт NVUTI + АДМИНКА | NVUTI, DICE | Скрипт+Админка | Слив скрипта

Задание нескольких переменных сразу.

Выполнения произвольного js кода.

Создание многострочных переменных. Действие «Шаблон».

Пример, завершение скрипта через заданное время.

Специальное значение null.

Переменная типа object.

Парсим ответ от апи. JSON.parse

Урок #5. Конструктор javascript.

Видео о том, как создавать сложные javascript выражения с помощью визуального программирования. Показан основной принцип и множество примеров.

Простейшие примеры использования конструктора.

Простые операции с числами.

Использование переменных в конструкторе.

Пример, формирование урл.

Использование блоков с произвольным кодом.

Пример, парсер широты/долготы городов.

Пример, фильтр для твиттер парсера.

Пример, форматирование строки.

Урок #6. Условия. Действие If. Постер twitter.

В этом видео: теория об условиях, создание постера twitter с множеством условий и проверок. Это первый более менее большой проект созданный на видео.

Пример. Поиск картинки на сайте.

Как составлять выражения для if.

Перебор всех аккаунтов.

Делаем код более читаемым.

Использование функций для упрощения скрипта.

Проверка на дату последнего твитта.

Постинг, проверка успешности выполнения.

Сохранение скриншота в случае ошибки.

Переход в многопоточный режим.

Урок #7. Циклы. Постер из RSS ленты.

В этом видео: о повторении действий, циклы, автоматическая загрузка на ютуб, улучшение постера созданного в прошлом видео, теперь твитты берутся из rss ленты.

Еще по теме:  Как отменить синхронизацию контактов Вконтакте

Когда возникает необходимость в использовании циклов.

Границы цикла, переменная CYCLE_INDEX.

Чтение из файла построчно.

Использования выражений в качестве границы цикла.

Прерывание цикла. Ожидание события с помощью цикла.

Пример, загрузка видео на ютуб.

Использование меток вместе с циклом.

Улучшаем постер твиттер, добавляем парсинг rss.

Урок #8. Многопоточность. Множество примеров.

В этом видео: все о многопоточности, многопоточная загрузка изображений, автовход с помощью глобальных переменных, обмен данными между потоками.

Запуск в однопоточном режиме.

Однопоточный режим несколько выполнений.

Завершение потока с ошибкой.

Запуск в 2 потока.

Завершение работы скрипта после отсутствия ресурса.

Остановка через действие «Прервать скрипт».

Пример, постер картинок из папки на imgur.com.

Обмен данными между потоками.

Пример, автовход gmail.

Синхронные и асинхронные действия.

Lock, выполнение действий в одном потоке.

Выполнение разных действий в потоках, обмен данными.

Обмен данными через список и глобальные переменные.

Совершенствуем постер в твиттер, дополнительные проверки, выделяем один поток под парсер, остальные под постинг.

Создание менеджера аккаунтов.

В этом руководстве описано, как хранить ваши учетные записи в базе данных. В этом уроке вы узнаете:

Как создать базу данных.
Как изменять записи в базе.
Как сделать так, чтобы несколько проектов работали с одной базой.

Создание парсера в несколько стадий.

В этом руководстве описано, как создать парсер с переменным числом потоков.

Источник: wiki.bablosoft.com

0bezynka / vk_script Goto Github PK

Метод помечает пользователя «Онлайн» на 5 минут. Скрипт срабатывает каждые 5 минут. Тем самым пользователь «вечно онлайн».

Скрипт (Очистка Друзей)

Находит забаненых/удалённых пользователей в друзьях. На выбор удаляет или банит (в ЧС) пользователя. Оба метода в скрипте, нужно лишь убрать «#» комментарий нужного метода. Должен работать один из них!

Самый простой скрипт Авто-статуса, из всего списка выбирает случайные текст, который в дальнейшем устанвливается «статусом» страницы вк. Отталкиваясь от этого исходника, можно сделать множество вариаций «статуса», все ограничивается фантазией.

Скрипт (Добавление друзей)

Сначала одобряет входящие заявки (при их наличии). Затем получает список «возможных» друзей в кол-во 50-и пользователей (больше нету смысла, т.к. более 50 заявок отправить ВК не позволит), отправляет заявки предложенным пользователям.

Скрипт (Отписывается от пользователей)

Отклоняет все исходящие заявки от пользователя.

  • clear_requests.py

Источник: giter.club

Как создать чат-бота ВКонтакте с расписанием уроков

Для начала нам нужно создать сообщество. Для этого на сайте ВК заходим во вкладку «Сообщества», далее нажимаем кнопку «Создать сообщество».

Выбираем любую тематику и вводим название.

Теперь нам нужно настроить сообщество. Заходим во вкладку «Управление» на странице группы.

Далее переходим во вкладку «Сообщения», включаем возможность отправлять в группу сообщения и сохраняем настройку.

Теперь нам нужно подключить бота в наше сообщество. Переходим во вкладку «Настройки для бота», включаем «Возможности ботов» и ставим галочку напротив «Разрешать добавлять сообщество в беседы». Сохраняем настройку.

После этого заходим во вкладку «Настройки», далее во вкладку «Работа с API».

Переходим во вкладку «Long Poll API», включаем Long Poll API, выбираем последнюю версию API и переходим в «Типы событий».

Тут мы выбираем все типы событий, которые связаны с сообщениями.

Во вкладке «Callback API» также выбираем последнюю версию API. В типах событий тоже выбираем все, что связано с сообщениями.

Теперь заходим во вкладку «Ключи доступа», нажимаем «Создать ключ», ставим все галочки и нажимаем «Создать». Копируем ключ и сохраняем его в текстовом файле, так как он понадобится нам в следующих шагах.

Настройка группы завершена!

Публикация iFrame / HTML5 игры во ВКонтакте. Основы

Сразу давайте обозначимся: тема API ВК тут рассматриваться не будет, ее я затрону в будущих материалах, так как она довольно обширна и представляет хорошие возможности. В этой статье будет самая основная часть: написание игры и публикация ее в социальной сети, как запускаемое приложение. Что потребуется для работы: — Текстовый редактор (на ваш вкус) — Любой браузер, поддерживающий HTML5 — Немного свободного времени

Часть 1. Игра на HTML

Думал, что можно использовать в качестве примера, пусть это будет та же игра, что и в видеоуроке про «Две шкатулки». Суть ее проста: перед пользователем есть две шкатулки, кликом по любой из них либо прибавляется, либо отнимается значение «score».

Вся игра изнутри выглядит так:

И ее файлы с комментариями:
Файл index.html
Две шкатулки // Инициализируем сцену scene= createScene(‘iCanvas’, ‘#EED6C6’); // Разворачиваем приложение на весь экран scene.fullScreen(true); // Инициализируем устройство ввода initInput(scene); // Создаем менеджер постэффектов post= createPost(scene); // Создаем меню createMenu(); // Создаем игру createGame();

Еще по теме:  Как сделать свое оформление в ВК

onload=«startGame(Menu, 30)» означает, что игра будет запущена с игрового состояния Menu с частотой кадров в 30.
Файл menu.js
function createMenu() < // объявляем глобальные переменные selection= 0; // Создаем объект, указывающий на выделенный пункт menuSelector= createRect(vec2df(50, 50), vec2df(30, 30), ‘#CD8181’); // СОздаем два прямоугольника, отвечающие за выбор того или иного пункта menuItem1= createRect(vec2df(190, 100), vec2df(300, 50), ‘#AAA189’); menuItem2= createRect(vec2df(190, 220), vec2df(300, 50), ‘#AAA189’); >// Описываем игровое состояние Menu function Menu() < // Обновляем позицию курсора input.upd(); // Если пользователь кликнул if (input.lClick) < // Если клик по первому пункту меню if (input.onNode(menuItem1)) < // Если он уже был выбран, сменяем игровое состояние, иначе выделяем его if (selection == 0) < setActivEngine(Game); >else < selection= 0; >> // Аналогично для второго пункта меню else if (input.onNode(menuItem2)) < if (selection == 1) < setActivEngine(Records); >else < selection= 1; >> // Отменяем ввод, чтобы срабатывало только на однократные нажатия input.cancel(); > // Если выбран первый пункт, то двигаем выделение к нему if (selection == 0) menuSelector.moveTo(menuItem1, vec2df(-40, 0)); // Если второй, то ко второму if (selection == 1) menuSelector.moveTo(menuItem2, vec2df(-40, 0)); // Отрисовываем пункты меню menuItem1.draw(scene); menuItem2.draw(scene); // вращаем указатель menuSelector.turn(5); // отрисовываем menuSelector.draw(scene); // теперь выводим текст scene.drawTextOpt( vec2df(200, 115), // Позиция ‘Сыграть!’, // Текст ‘bold 20px sans-serif’, // Шрифт (аналогично CSS) ‘white’, // Цвет текста ‘black’, // Цвед обводки 2 // Толщина обводки ); scene.drawTextOpt( vec2df(200, 235), // Позиция ‘Рекорды!’, // Текст ‘bold 20px sans-serif’, // Шрифт (аналогично CSS) ‘white’, // Цвет текста ‘black’, // Цвед обводки 2 // Толщина обводки ); scene.drawTextOpt( vec2df(150, 20), // Позиция ‘Две шкатулки!’, // Текст ‘bold 30px sans-serif’, // Шрифт (аналогично CSS) ‘#478EA4’, // Цвет текста ‘white’, // Цвед обводки 2 // Толщина обводки ); // добавляем плавности при движении и вращениях post.motionBlur(5); > // Игровое состояние Records, если пользователь выберет пункт меню «Рекорды» // Пока это меню нефункционально function Records() < // Если пользователь кликнул в любое место, отправляем его // обратно в меню и отменяем ввод if (input.lClick) < setActivEngine(Menu); input.cancel(); >// выводим текст scene.drawTextOpt( vec2df(150, 20), // Позиция ‘Рекорды’, // Текст ‘bold 30px sans-serif’, // Шрифт (аналогично CSS) ‘#478EA4’, // Цвет текста ‘white’, // Цвед обводки 2 // Толщина обводки ); >

Для справки

vec2df() — это конструктор объекта, хранящий в себе две переменные: x и y в вещественном типе, если нужно использовать только целые, для этого есть vec2di()

Файл game.js

Код игры был написан мной давно на движке j2Ds.

Часть 2. Google Drive

После написания игры, ее отладки, тестирования, встает вопрос, о том, где же разместить игру. Основное правило ВКонтакте: игра должна быть размещена на внешнем ресурсе, и доступ к ней должен осуществляться с SSL (https://). Бесплатных хостингов, дающих такую возможность, я не нашел. Но есть «Google Диск», который умеет воспроизводить пользовательские JS/HTML файлы. Здорово!

Даже если ваша игра и задействует сервер, вы можете воспользоваться AJAX мостом к нему, настроив сервер и приложение должным образом, чтобы они могли нормально взаимодействовать. Из приложения вы можете коннектиться к любым серверам даже по простому http, внутрь iFrame ВК не лезет. Но клиент игры обязан быть доступен только через «https://»

Вы можете создать тут любое количество папок и файлов, это не имеет никакого значения, главное — создайте папку, где будет храниться игра. Если вы посмотрите на первый скриншот, со структурой файлов игры, то поймете, что нужно перенести все файлы в диск. Для этого есть специальная функция загрузки всей папки:

После откроется диалог выбора, я выбрал папку www (в которой лежит index.html) просто загрузил ее на сервер:

Как не сложно заметить, структура файлов такая же. Следующее, что нужно сделать — это дать доступ папке, в которой лежит index.html.

В моем случае index.html находится в папке www, поэтому выходим на уровень назад и выделяем папку www и жмем на пиктограмму открытия доступа:

Включаем доступ по ссылке (вверху справа) и копируем ссылку для общего доступа:

Еще по теме:  Как сделать фон в ВК в чате

Этим мы открыли доступ к нашей игре всем, кто загестрирован на google. В любом сервисе. Чтобы снять и это ограничение, переходим на вкладку «расширенные», и там активируем доступ для просмотра всем в интернете:

Теперь эту ссылку вставьте в любой текстовый редактор, будем ее модифицировать: Ссылка выглядит так: https://drive.google.com/folderview?id=0B09c3UoyWG0xfjBYaEtxWlNMdDFEbmUwVjhTb3pqV0l5SUI1NTVmLW1CTGE4Vm4zaHgyYmMusp=sharing

Удалив все НЕжирное, получим ссылку вида: https://0B09c3UoyWG0xfjBYaEtxWlNMdDFEbmUwVjhTb3pqV0l5SUI1NTVmLW1CTGE4Vm4zaHgyYmM

Дописываем после https://

путь к
googledrive.com/host
и получаем ссылку вида: https://googledrive.com/host/0B09c3UoyWG0xfjBYaEtxWlNMdDFEbmUwVjhTb3pqV0l5SUI1NTVmLW1CTGE4Vm4zaHgyYmM

Скопировав ссылку в браузер, откроется ваша игра. Откроется как обычная интернет страница в интернете, но по безопасному соединению.

Не теряйте модифицированную ссылку, она нам пригодится.

Часть 3. ВКонтакте

После того, как вы научились открывать вашу игру через Googledrive в браузере, переходим на сайт ВКонтакте в раздел приложения:

На этой странице скроллим в самый низ и выбираем «Разработчикам», откроется страница для девелоперов:

Тут жмем «Создать приложение» и заполняем вашими данными форму:

После заполнения ВК отправит вам смс для подтверждения, введя код подтверждения (бесплатный) вас перебросит в панель управления вашими приложениями. Там будет много разной информации, вы можете походить по вкладкам, по-нажимать, по-проверять:

Теперь важный момент: приложение пока доступно для запуска только вам, как создателю, другие его не видят. Чтобы оно стало видимым для всех нужно в графе «Состояние» выбрать соответствующий пункт.

Обратим внимание на строки для ввода iFrame адреса. Тут два поля. Первое поле — адрес http, второе — https. Лучше оба заполнить в формате https, так надежнее. Ту ссылку, что мы получили путем нехитрых модификаций вставляем в адрес и сохраняем данные. После сохранения данных, можно пробовать запустить игру:

Теперь, открывая пункт «Управление приложением» вы можете манипулировать вашей игрой, смотреть статистику и т.д. Управлять же файлами самой игры можно просто: редактируете, их, к примеру, на локальной машине, и, как только все изменения отлажены, заменяете файлы на гугл диске в нужной папке. Повторно выставлять права и доступ не нужно, так как выставлены они для всей папки, ссылки менять тоже не нужно.

Пример получившегося приложения могу дать в ЛС.

На этом у меня всё. Работа с VK API уже есть и доступна в виде видеоуроков, которые тут публиковать не буду. Ранее за публикацию видео аккаунт был заблокирован.

Пишем скрипт чат-бота ВК

Для написания скрипта можно использовать множество языков программирования, но я покажу все на примере node.js.

Создаем файл index.js на компьютере и открываем его редактором кода или IDE (я использую VS Code).

Теперь нам нужно импортировать библиотеку, которую мы установим на сервер позже, и вставить токен (ключ доступа), который мы получили в прошлых шагах:

Чтобы чат-бот отправлял раcписание, ему нужно его знать. Давайте создадим объект с днями и занятиями:

Заполните этот объект вашими данными по вышеуказанному примеру.

Теперь нам нужно, чтобы скрипт получал все сообщения, которые отправляются боту:

Проверяем, содержит ли сообщение текст и отправляется ли от имени пользователя:

if (context.text == NULL || context.isGroup == true || context.text == ‘undefined’) return

Теперь напишем условие на то, что сообщение содержит название дня недели. Также не забываем отправить сообщение с помощью «context.send» вместе с расписанием. Кроме того, добавляем инлайн-кнопку для просмотра расписания на всю неделю, условие которой мы напишем в следующем шаге:

Теперь можно написать условие для просмотра расписания на всю неделю:

Сохраняем файл и приступаем к его установке на сервер.

Подготовка серверной части к подключению

  • Бота для отправки мгновенных ответов на поступающие сообщения.
  • Систему автоматической модерации контента.
  • Сервис для сбора и обработки показателей вовлеченности аудитории.

Инструкция по подключению подробно описана в отличной документации для разработчиков ВКонтакте. Разберем её подробнее, для размещения скрипта чат-бота мы должны иметь функционирующий веб-сервер.
Для работы с callback API ВКонтакте рекомендует использовать протокол https, инструкцию по бесплатному получению сертификата cloudflare и настройки сервера вы сможете найти в статье, которую можно найти в поисковой системе Google по запросу Бесплатный SSL сертификат CloudFlare

По окончании настройки сервера вы должны иметь рабочий web-сервер, на который мы загрузим скрипт нашего бота.

Реализация прощания с участником после того, как он покинул сообщество

Реализация идентичная, в конкретном случае мы обрабатываем group_leave
Фрагмент кода оповещения о выходе из сообщества

Источник: vikom-plast.ru

Рейтинг
( Пока оценок нет )
Загрузка ...