ХОТКЕИ


ПЕРЕМЕННЫЕ


ОПРЕДЕЛЕНИЯ

Полностью наследуют логику, все определения пишутся точно так же, как и логические операции.


ЛОГИЧЕСКИЕ ОПЕРАТОРЫ


ЛОГИЧЕСКИЕ БЛОКИ

Логическая операция состоит из блоков. Пример:
1|>|2|OR|2|>|1. То, что между оператором |OR| является логическими блоками.

Логические блоки имеют свои команды:


СКРИПТ-БОКС

Скрипт-бокс позволяет выполнять логические операции, логические блоки, функции и парсеры различных видов. Ниже описаны основные возможности и примеры использования.

Теги для многострочного кода

Пример:
#beginScript
|PARS|[1] = test
message
#endScript
В итоге |PARS|[1] будет содержать значение - test
message

Операторы

Присваивание

= - оператор присваивания.
Пример: |PARS|[1] = |PARS|[1]Test присваивает |PARS|[1] значение с добавленным словом “Test”.

Комментарии

// - строки, начинающиеся с этого оператора, будут пропускаться интерпретатором.

Линейные логические блоки

|| - начало линейного логического блока. После него идет логическая операция.
Пример:
|||PARS|[1]|>|2
|PARS|[1] = |PARS|[1] руб.
|PARS|[2] = |PARS|[2] руб.
||END
||END - конец линейного логического блока. Если не указать данную команду, только первая строка будет считаться частью блока.

Критическая секция

|SYNCHOLE| - обозначение критической секции.
Пример:
|SYNCHOLE| = enter (вход)
|SYNCHOLE| = leave (выход)

Результаты

|CONCLUSION| - обозначение результата.

Пример: |CONCLUSION| = 0 устанавливает результат как “плохой”.

Пример полноценного скрипта

|DOLOGIC||PARS|[1]|>|0|ENDLOGIC|
|PARS|[1] = Есть баланс
|DOLOGIC|

|DOLOGIC||PARS|[1]|<>|Есть баланс|AND||PARS|[1]|<|0|ENDLOGIC|
|CONCLUSION| = 0
|DOLOGIC|

Пояснение:

Работает только при хорошем ответе и в самую последнюю очередь (до вывода лога).

Подключение кода из динамических переменных

Для подключения кода, хранящегося в динамической переменной, используйте префикс |SB| вместо |DV|.

Специальная функция

|SCRIPTBOX| - позволяет использовать функционал Скрипт-бокса, включая все описанные возможности.


РАСШИРЕННАЯ СТАТИСТИКА

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

Расширенная статистика обновляется раз в 50 миллисекунд.
Если вы подсчитываете какие-либо данные, например: кол-во строк с цифрами, обязательно используйте глобальные переменные.


КОНТЕЙНЕР


ФУНКЦИИ

Начальная функция должна указваться в скобках
Пример с несколькими функциями - (|MD5||BASE64||LOGIN||BASE64||MD5|)

Функции можно использовать в логических операциях:
((|UPPER||PARS|[1]||UPPER|)|=|ASD|OR||PARS|[1]|=|asd)|AND|(|PARS|[2]|=|DSA|OR|(|LOWER||PARS|[2]|
LOWER|)|=|dsa)




|MD5|

Описание:
Шифрование выделенной строки данным тегом в MD5.


|BASE64|

Описание:
Шифрование выделенной строки данным тегом в Base64.


|SHA1|

Описание:
Шифрование выделенной строки данным тегом в Sha1.


|SHA256|

Описание:
Шифрование выделенной строки данным тегом в Sha256.


|SHA512|

Описание:
Шифрование выделенной строки данным тегом в Sha512.


|FILETOBASE64|

Описание:
Шифрование файла по ссылке в Base64.

Пример использования:


|RANDOM|

Описание:
Генерирует рандомное значение по своей маске с длиной по диапазону.

Пример использования:

Примеры:


|LOWER|

Описание:
Перевод выделенной строки данным тегом в нижний регистр.


|UPPER|

Описание:
Перевод выделенной строки данным тегом в верхний регистр.


|FUPPER|

Описание:
Ставит первый символ в верхнем регистре.


|REMOVENUM|

Описание:
Убирает все цифры из строки.


|URLENCODE|

Описание:
URL-кодирует строку.


|URLDECODE|

Описание:
Декодирует строку в URL формате.


|FDSPACE|

Описание:
Удаляет все пустые символы с начала строки.


|EDSPACE|

Описание:
Удаляет все пустые символы с конца строки.


|SCRIPT|

Описание:
Запрос к скрипту на сервер, указанный в настройках.


|DEMPTYSTR|

Описание:
Удаляет пустые строки.


|DUPDEL|

Описание:
Удаляет дубликаты.


|GETLINE|

Описание:
Возвращает указанную строку.

Пример использования:


|GETCHAR|

Описание:
Возвращает указанный символ.

Пример использования:


|GETCOUNT|

Описание:
Достает количество строк.


|MATH|

Описание:
Математические уравнения, возможно делать очень сложные вычисления.

Пример уравнения:

Дополнительная информация:
Используется библиотека TMS Analytix. Ссылка на документацию: TMS Analytix

Принимает дополнительный аргумент:

Пример использования:


|LENGTH|

Описание:
Возвращает длину указанной строки.


|SIMPLEPARS|

Описание:
Парсит значение из строки, имеет свои команды: |FROM|, |TO|, |IN|, |INDEX|

Команды:

Также принимает команды:

Пример использования:


|REGEXPARS|

Описание:
Парсит значения по регулярке, имеет свои команды: |GROUP|, |EXPR|, |IN|

Команды:

Пример использования:


|REPLACESTR|

Описание:
Заменяет все найденные значения в строке, имеет свои команды: |FROM|, |TO|, |IN|, |IGNORECASE|

Команды:

Пример использования:


|REGREPLACE|

Описание:
Заменяет все найденные значения в строке, имеет свои команды: |EXPR|, |TO|, |IN|

Команды:

Пример использования:


|EVAL|

Описание:
Запускает интерпретацию JavaScript-кода с помощью движка QuickJS, применяя глобальный контекст исполнения без использования ES6 модулей. Для активации устаревшего JavaScript-движка вставьте команду |USEOLDJS| внутри вызова |EVAL|.

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


|JSESCAPE|

Описание:
Экранирует строку для вставки в JS код.

Пример использования:


|SCRIPTBOX|

Описание:
Функционал Скрипт-бокса. Описание выше (конечная функция, желательно чтобы она была и начальной, возвращает пустоту).


|DLL|

Описание:
Вызов функции из DLL.

Дополнительная информация:
Принимаются только нативные библиотеки. Все параметры (если они есть) и возвращаемые значения должны быть типа PChar\PWideChar и также должна быть указана директива stdcall.

Команды:

Пример использования:

Для обзора плагинов должны быть указаны:


|SLEEP|

Описание:
Ждет указанное время (время указывается в миллисекундах).

Пример использования:


|REPEAT|

Описание:
Повторяет текущий запрос. Есть два вида повторений: local и обычный (пустой, не нужно ничего указывать).

Команды:

Пример использования:


|STOP|

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

Пример использования:


|PAUSE|

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

Пример использования:


|ADDID|

Описание:
Добавляет идентификатор в список идентификаторов. Возвращает пустоту.

Пример использования:


|DELID|

Описание:
Удаляет идентификатор из списка идентификаторов. При успешном удалении (если идентификатор был найден) возвращает success, иначе not found.

Пример использования:


|DELPROXY|

Описание:
Удаляет текущую проксю.

Пример использования:


|FREEZEPROXY|

Описание:
Замораживает текущую проксю на указанное время в секундах.

Пример использования:


|NEXTPROXY|

Описание:
Меняет проксю на следующую по списку. Возвращает новую проксю.

Пример использования:


|UNIXTODATE|

Описание:
Преобразовывает UNIX значение с указанным форматом в дату.

Пример использования:

Дополнительная информация:
Список форматов можно посмотреть здесь: Delphi Basics


|USEPROXY|

Описание:
Использовать указанную прокси.

Пример использования:


|PRINT|

Описание:
Выводит в лог указанный текст (только в студии).


|REGEXGLUE|

Описание:
Функция |REGEXGLUE| склеивает данные из |REGEX| по индексам с добавлением разделителя.

Пример использования: 1, | ,2, \ ,3

Входные параметры:

Возвращаемое значение:


|SIMPLEGLUE|

Описание:
Функция |SIMPLEGLUE| склеивает данные из |REGEX| по индексу и значению.

Пример использования: 3, Значение

Входные параметры:

Возвращаемое значение:


|ESCJSON|

Описание:
Функция |ESCJSON| экранирует JSON значение.

Возвращаемое значение:


|PBKDF2KEY|

Описание:
Функция |PBKDF2KEY| генерирует ключ с использованием алгоритма PBKDF2 на основе заданного пароля и соли.

Входные параметры:

Возвращаемое значение:

Исключения:


|SCRYPT|

Описание:
Функция |SCRYPT| генерирует ключ с использованием алгоритма scrypt на основе заданного пароля и соли.

Входные параметры:

Возвращаемое значение:

Исключения:


|BASE64DECODE|

Описание:
Функция |BASE64DECODE| декодирует входную строку из формата Base64.

Входные параметры:

Возвращаемое значение:


|SHA3HASH|

Описание:
Функция |SHA3HASH| выполняет хеширование текста с использованием алгоритма SHA-3.

Входные параметры:

Возвращаемое значение:

Исключения:


|SHA2HASH|

Описание:
Функция |SHA2HASH| выполняет хеширование текста с использованием алгоритма SHA-2.

Входные параметры:

Возвращаемое значение:

Исключения:


|BCRYPT|

Описание:
Функция |BCRYPT| выполняет хеширование строки с использованием алгоритма BCrypt.

Входные параметры:

Возвращаемое значение:


|AESENCRYPT|

Описание:
Функция |AESENCRYPT| выполняет шифрование текста с использованием алгоритма AES.

Входные параметры:

Возвращаемое значение:

Исключения:


|AESDECRYPT|

Описание:
Функция |AESDECRYPT| выполняет расшифровку текста с использованием алгоритма AES.

Входные параметры:

Возвращаемое значение:

Исключения:


|AESGCMENCRYPT|

Описание:
Функция |AESGCMENCRYPT| выполняет шифрование текста с использованием алгоритма AES-GCM.

Входные параметры:

Возвращаемое значение:

Исключения:


|AESGCMDECRYPT|

Описание:
Функция |AESGCMDECRYPT| выполняет расшифровку зашифрованного текста с использованием алгоритма AES-GCM.

Входные параметры:

Возвращаемое значение:

Исключения:


|RSAENCRYPT|

Описание:
Функция |RSAENCRYPT| выполняет шифрование текста с использованием алгоритма RSA.

Входные параметры:

Возвращаемое значение:

Исключения:


|RSADECRYPT|

Описание:
Функция |RSADECRYPT| выполняет расшифровку текста с использованием алгоритма RSA.

Входные параметры:

Возвращаемое значение:

Исключения:


|RANDOMBYTES|

Описание:
Функция |RANDOMBYTES| генерирует массив случайных байтов указанной длины.

Входные параметры:

Возвращаемое значение:

Исключения:


|STRTOBYTES|

Описание:
Функция |STRTOBYTES| преобразует строку в массив байтов и возвращает его в формате JSON.

Входные параметры:

Возвращаемое значение:

Исключения:


|BYTESTOSTR|

Описание:
Функция |BYTESTOSTR| преобразует массив байтов, представленный в формате JSON, в строку с использованием кодировки UTF-8.

Входные параметры:

Возвращаемое значение:

Исключения:


|UUIDV4|

Описание:
Функция |UUIDV4| возвращает уникальный UUIDV4.


|GETVALUEBYKEY|

Описание:
Функция |GETVALUEBYKEY| извлекает значение по ключу из многострочного текста.

Входные параметры:

Возвращаемое значение:

Исключения:

|SAVEFILE|

Описание:
Функция сохраняет данные в файл относительно пути созданной сессии с возможностью перезаписи, добавления к существующему файлу или сохранения с инкрементированным именем. Также поддерживается сохранение текстовых и бинарных данных (в виде Base64). В случае ошибок при сохранении или создании директорий функция возвращает сообщение об ошибке.

Команды:

Пример использования:

|HEXTOBASE64|

Описание:
Функция преобразует шестнадцатеричную строку в строку в формате Base64. Если длина входной строки нечетная или если данные не могут быть преобразованы, функция возвращает сообщение об ошибке.

Команды:

Пример использования:

|BASE64TOHEX|

Описание:
Функция преобразует строку в формате Base64 в шестнадцатеричную строку. В случае ошибок при декодировании входной строки функция возвращает сообщение об ошибке.

Команды:

Пример использования:

МОДУЛЬ РАСПОЗНАВАНИЯ КАПЧИ

В дополнительных настройках есть возможность установить Модуль распознавания капчи как необязательный параметр. Также в дополнительных настройках есть возможность передать API-параметры на сервер.

Список API параметров:

Параметр “regsense” по умолчанию в системе in-Line Kit идет 1. Разделять параметры нужно символом &.

Пример:

Дополнительная ссылка нужна, если у вас в одном запросе идет выполнение модуля и сразу отправка запроса на сайт. Пример:

Программа перейдет на Login, сделает все нужное (авторизация, проверка определений и т.д.). Если вылезла капча, дальше под авторизацию подставит дополнительную ссылку.

Для распознавания картинки в base64 нужно указать в поле для ссылки “Ссылка на изображение капчи | Ключ сайта”:

Для распознавания новых видов капчи нужно указать в поле для ссылки “Ссылка на изображение капчи | Ключ сайта”:

Есть возможность указать свой pageurl.

Для работы с Recaptcha 2.0+ вам необходимо в своем личном кабинете установить минимальную ставку от 2.2 долларов (Anti-Captcha.com). Для работы с CapMonster необходимо в настройках убрать “Получение ответа с задержкой”, если капча не готова (к другим эмуляторам это не относится).


MAIL CONNECTOR

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

Поддерживаемые почтовые сервисы:

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

Также все исходные ответы от сайтов и т.д. хранятся в обычных переменных: |RESPONSE|, |HEADERS|, |COOKIES|


ДОПОЛНИТЕЛЬНЫЕ КОМАНДЫ