Geninvenst 0 Опубликовано: 8 авг 2023 Выбираем браузер: Выбираем Прокси: Выбираем поле для ввода. Жмем F7 и выбираем наш ресурс: Теперь меняем под себя тип прокси, по умолчанию стоит http. Жмем "Ок". В логике нашего скрипта появилось первое действие. Наводим наш курсор прямо на "прокси". Жмем на знак предупреждения. Мы получили отработку ошибок. Если прокся валидная - мы перейдем к проверке аккаунта, если прокся невалидная - мы будем подбирать следующую по списку, пока не найдем валидную. для этого жмем на полоску в самом начале нашего скрипта. После нажатия она загориться красным, это означает что мы будем добавлять действие прямо в это место. В BAS'e есть возможность поиска действий, воспользуемся этим: ищем слово "Метку". Жмем установить метку. Даем ей имя "Проверка прокси" и жмем ОК. В нашей логике появилось новое действие - метка. Если сравнить метку с видеоиграми, то метка это что-то вроде чекпоинта. В случае если что-то пошло не так - мы возращаемся к месту где установлена метка. Теперь добавим тот самый переход к метке, жмем на полоску под красным действием "Лог". И в поисковике ищем "Перейти к метке". Выбираем нашу метку "Проверка прокси". Остается лишь удалять проксю из списка, если она не валидная, для этого жмем на ту же полоску под красным логом. В поисковике ищем "Удалить текущий элемент". Выбираем наш ресурс и жмем ОК. Переходим к авторизации: достаем логин и пароль из нашего ресурса и вводим их на сайте. Авторизация на сайте Жмем на самую нижнию полоску в нашем скрипте: В поисковик вбиваем "Загрузить". Указываем URL сайта: starpets.gg и жмем ОК. У нас появилась эмуляция нашего браузера. Теперь нам нужно чтобы наш скрипт нажал на "PROFILE". Для этого жмем F1 и нажимаем ПКМ по кнопке PROFILE. Выбираем действие "Кликнуть по элементу". Жмем Ок. Мы попали на страницу регистрации, таким же способом переходим к авторизации. ПКМ выбираем PROFILE. Мы дошли до нужной страницы. Теперь достанем наши log:pass, для этого вбиваем в поисковик "Парсить CSV". Выбираем первое действие. В поле строка указываем наш ресурс. Все как делали до этого - кликаем по полю для ввода, жмем F7, выбираем ресурс "База". Далее указываем наши разделители, в моем случае это ":". Возвращаемся к браузеру, теперь нам нужно ввести наш логин и пароль. Кликаем по окошку для ввода логина и жмем "Ввод текста". Жмем "Текст для ввода" и клацаем F8. Выбираем USERNAME. Задержку выставляем 0 и жмем ОК. Перед тем, как ввести пароль нам нужно сделать небольшую задержку, нужно это чтобы браузер пропустил наши действия и не посчитал что мы боты. Для этого вбиваем в поисковик "Спать". Спать будем 333 миллисекунды. Жмем ОК. С вводом пароля делаем все также, ниже прикреплю скрин как это выглядит у меня Так как мы в режиме разработчика, то нам нужно зайти на любой рабочий аккаунт. Для этого берем рабочий log:pass и жмем F2 в нашем браузере (эта функция позволит нам вводить данные в реальном времени). Снова жмем F1 и учим наш скрипт кликать SING IN. Жмем ОК. В браузере нам выдало cloudflare капчу, решить её можно одним кликом. Наводим на окошко для клика и жмем "Кликнуть по элементу". В идеале сделать задержку перед решением капчи + сделать проверку есть ли капча на экране, но капча вылазит в 100% случаев, поэтому проверки не обязательны. Тут мы видим что в элементе какие-то рандомные символы. Можем предположить что в каждом новом потоке (браузере) будут другие символы, а значит наш браузер не сможет найти капчу. Поэтому кликаем на это поле с текстом и ставим 2-ой элемент. Выбираем его и жмем ОК. Как мы видим в браузере решилась капча и мы попали на сайт. Теперь сделаем проверку валидности аккаунта по URL, для этого находим любую страницу, которая доступна только авторизованным пользователям. В нашем случае это Inventory: https://starpets.gg/inventory. Получаем ссылку, по которой нам нужно перейти чтобы попасть в инвентарь и загружаем её в браузере через действие "Загрузить". Указываем полученную ссылку. Попадаем на страницу с инвентарем. Если перейти по этой ссылку с не авторизованного (в нашем случае с невалидного) аккаунта, то нас перебросит совсем по другой ссылке. Это значит, что мы можем проверить где сейчас находится наш скрипт, и если ссылка соответствует нашей, то продолжить проверку, иначе аккаунт не рабочий. Для этого ищем в браузере действие "Текущий URL". Оставляем все как есть и жмем OK. Теперь нам нужно проверить, правильный у нас URL или нет, для этого ищем действие в браузере: if. Кликаем по пустому полю и жмем F8. Выбираем CURRENT_URL Дописываем "==" ставим две ковычки "" и в них пихаем ссылку. [[CURRENT_URL]] == "https://starpets.gg/inventory" Ставим галочку "Добавить else блок" и жмем ОК. Если ссылка равна нашей, то выполняем действия из спойлера ниже, если не равна (else) то помечаем аккаунт как нерабочий, для этого жмем на полоску под else. Ищем действие FAIL. Сообщение об ошибке - указываем логин и пароль от аккаунта и оповещаем об его состоянии. Указываем наш ресурс БАЗА и пишем что аккаунт невалид. Получаем такую логику. Проверка баланса + парс вещей с инвентаря Жмем на полоску под IF. Проверить баланс очень просто, загружаем любую страницу где его видно, делаем ПКМ по значению. "Получить текст". Рекомендуется выбрать второй элемент. Где SAVED_TEXT - там нужно указать как мы будем называть нашу переменную. Пишем BALANCE. Теперь самое сложное - спарсить все вещи которые есть на аккаунте. Многие кодеры делают это через цикл. мы же поступим умнее и 1-им действием получим все вещи на аккаунте. Будем парсить все названия игрушек под картинками. Для этого в обычном браузере (НЕ В BAS!) добираемся до этой же страницы, открываем код элемента и наводим мышку на название игрушки. Не забываем включить режим поиска элемента как на скрине выше. Само название не имеет элемента, поэтому вручную изучаем код пока не доберемся до названия. Запоминаем класс и идем в CHATGPT ( chat.openai.com ) Переписываем это значение <div class="pet___info"> <h3>Bat Face Roller Skates</h3> И просим у ChatGPT написать нам xpath путь чтобы достать значение Bat Face Roller Skates Готовая фраза: <div class="pet___info"> <h3>Bat Face Roller Skates</h3> напиши xpath путь чтобы достать значение Bat Face Roller Skates Получаем ответ: //div[@class="pet__info"]/h3/text() Далее возвращаемся к нашему скрипту. Забиваем в поисковик: Код страницы. Ничего не меняя, жмем ОК. Теперь перейдем к xpath, ищем в поисковике Текст для применения: [[SAVED_PAGE_HTML]] xpath запрос - то, что нам выдал джпт: //div[@class="pet__info"]/h3/text() ЖмемОК. Мы получили данные в виде списка, нам нужно преобразовать его в текст для прочтения. Для этого ищем действе в браузере: объединить в строку. Переменная содержащая список: XPATH_XML_LIST. И больше ничего не меняем. Жмем ОК Вот и все! Остается лишь сделать запись аккаунта в файл и вывести в консоль что аккаунт рабочий Запись и логгирование Ищем действие "Запись в файл". Сразу ставим галочки как на скрине Путь к файлу - наш ресурс "Гуды". Данные для записи - наш логпасс + данные которые мы получили: {{База}} | Balance: [[BALANCE]] | Pets: [[JOIN_RESULT_STRING]]. Жмем OK. 0 Поделиться сообщением Ссылка на сообщение