Нужен разработчик с опытом ZennoPoster + C# + JavaScript для доработки существующего проекта.
Есть готовый Common Code на C#, в котором реализован класс MobileClicker для работы с мобильным браузером:
свайпы;
touch-события;
паузы чтения;
возвраты вверх;
случайные действия;
ограничение общего времени выполнения.
Код уже работает в проекте. Переписывать всё с нуля не требуется.
Основная проблема в том, что текущая логика поведения построена преимущественно на случайных вероятностях и заранее заданных диапазонах. Мне нужно сделать алгоритм более естественным и контекстным, чтобы действия зависели от текущего состояния и содержимого страницы.
Что нужно сделать
Проанализировать существующий MobileClicker и переработать:
RandomSwipeOnSite()
DoHumanSwipe()
DoMicroTouch()
DoSafeTouch()
DoReadingPause()
GetReadingPause()
Нужно улучшить:
логику скроллинга;
выбор момента и места touch;
длительность и структуру пауз;
зависимость действий от содержимого страницы;
вариативность поведения;
переходы между действиями;
работу на страницах разной длины.
Сейчас многие решения принимаются через фиксированные вероятности и Random. Нужно уменьшить зависимость от таких жёстких схем и сделать логику более контекстной.
Важно
Не требуется:
менять User-Agent;
изменять fingerprint;
работать с WebGL;
подменять технические параметры браузера;
заниматься обходом антибот-защиты.
Задача именно в качественной переработке алгоритма поведения мобильного пользователя.
Что должно сохраниться
Текущий вызов:
robot.RandomSwipeOnSite(
minSec,
maxSec,
"ШАГ 1:"
);
Также должны сохраниться переменные:
minTimeWorkStage1
maxTimeWorkStage1
и совместимость с:
Instance
IZennoPosterProjectModel
ActiveTab
Touch
EvaluateScript
Результат
На выходе нужен:
Исправленный полный код Common Code.
Код должен компилироваться в используемой версии ZennoPoster.
Краткое описание внесённых изменений.
Проверка на нескольких разных мобильных разрешениях.
Сохранение существующей логики проекта вне MobileClicker.