Выпущена 24.2.0 версия BrowserAutomationStudio

Bablosoft News
  • Обновление версии браузера.

    Были автоматизированы все практически процессы связанные с обновлением версии браузера, сюда входит:

    • Автоматическое тестирование.
    • Улучшение инструментов для работы и обновления патчей.

    Также после недавнего обновления движка браузера был осуществлен переход на более стабильный метод взаимодействия с ним(CDP вместо CEF).

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

    В будущем планируется обновлять ее для каждой версии BAS.

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

    Поддержание браузера в актуальном состоянии должно благоприятно сказаться на его аутентичности.

    В этом апдейте Chrome обновлен до 92.0.4515.131.

    Новый модуль "Подтверждение телефона".

    Данный модуль полностью заменяет функционал старого модуля "Получить смс". Старый модуль отключен по умолчанию, но не удален. Если вы хотите использовать его, достаточно просто включить его в менеджере модулей.

    Новый модуль содержит большее количество сервисов, более актуальную информацию по сайтам, подробную документацию.

    Функционал модуля также был расширен, теперь можно использовать дополнительные возможности API сервисов: получать баланс, количество доступных номеров, список сайтов и стран.

    Изменять новый модуль намного легче чем старый.

    Также мы поработали над многопоточным режимом и лимитами запросов.

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

    Сделал новый модуль @GhostZ

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

    Был добавлен универсальный метод решения капчи с помощью кликов по изображению. Этот метод доступен на сервисах rucaptcha и 2captcha. Подробнее здесь.

    Улучшена документация для действий "Решить FunCaptcha" и "Решить HCaptcha".

    Разработкой занимался @oyasumi-punpun

    Новый модуль "Контрольная сумма".

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

    Поддерживается множество алгоритмов: md5, sha1, sha-224, sha-256, sha-384, sha-512, sha3-224, sha3-256, sha3-384, sha3-512, shake-128, shake-256, keccak-224, keccak-256, keccak-384, keccak-512, blake2b-512, blake2s-256, blake3, crc-16, crc-32, md4, mdc2, ripemd160, whirlpool.

    Модуль сделан с использованием node.js.

    Разработкой занимался @GhostZ

    Улучшена смена языка браузера.

    Исправлен баг, который выдавал некорректные данные при смешивании шаблона Accept-Language с языком прокси.

    Улучшена смена локали браузера, теперь тесты вроде new Intl.RelativeTimeFormat().format(-1, "day") проходят корректно.

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

    Это можно сделать либо изменив значение --lang=en в файле chrome_command_line.txt, либо воспользовавшись новым параметром в действии "Настройки браузера":

    Язык интерфейса браузера обнаружить крайне проблематично, это изменение сделано скорее "на всякий случай".

    Другие изменения.

    Добавлена поддержка recaptcha enterprise.

    Было также исправлено некоторое количество незначительных багов.

    24.2.1

    Исправлена проблема со сменой client hints из serviceWorker.

    24.2.2

    Улучшена эмуляция мыши и клавиатуры.
    Исправлены проблемы при передаче некоторых cookies из браузера в хттп клиент.
    Другие небольшие изменения.

    24.2.3

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

  • Понеслась!

  • @support для премиум таже ссылка ?

  • @biohacker01 Забейте пока, премиум от бесплатной версии по функционалу на стороне клиента ничем не отличаются, только визуально

  • Тест https://abrahamjuliot.github.io/creepjs/ всё ещё не работает без установки отпечатка. Это противоречит вашему утверждению в соседней теме, что БАС без отпечатка полностью идентичен хрому. Увы, немного не идентичен

    Немного странно, я бы сказал, реализована фича аргументов командной строки. Сейчас провёл несколько тестов и выяснил, что аргументы, указанные в действии "Настройки браузера", добавляют новые аргументы, если таковых нет в chrome_command_line.txt, и переопределяют существующие там. Это, во-первых, не особо очевидно для юзера, тем более некоторые вообще могут не знать про chrome_command_line.txt и то, что они добавляют свои аргументы, а во-вторых, не даёт возможности полностью убирать те дефолтные аргументы, прописанные в chrome_command_line.txt. Пример: допустим, мне по какой-либо причине хочется убрать аргумент --disk-cache-size=1 из аргументов командной строки браузера при запуске. Но увы, сделать я это никак не могу, максимум переопределить аргумент на, допустим, --disk-cache-size=2, что не решит моей проблемы. Я бы предложил при создании действия "Настройки браузера" копировать в поле с аргументами данные из chrome_command_line.txt, и далее при запуске полагаться только на аргументы из действия. Таким образом, юзеру сразу видно ВСЕ дополнительные аргументы командной строки браузера, не касающиеся работы с ним (понятно, что в действительности там аргументов намного больше, но просто часть из них необходимы для непосредственного взаимодействия БАСа и браузера), и он может и переопределить дефолтные, и удалить их, и добавить свои.

    Эх, 2 месяца прошло, а при этом "недоработки", связанные с переходом на новый движок, похоже, так и не доделаны. Проверял запись http-запросов и инструменты разработчика хрома, как наиболее важое лично для меня. Первое так и болтается отключенным, а второе всё так же открывается в хроме в другом окне. Жаль...

  • Фидлер информативнее в отладке запросов. И инструмент разработчика всегда есть в обычном браузере - не критично.

  • @DoctorKrolic не совсем понял, в каком момент надо ставить "настройка браузера"
    если ставить до установки профиля вроде ничего не происходит, если после, то сбивается разрешение экрана, и наверное еще что то.

  • @DoctorKrolic

    Тест https://abrahamjuliot.github.io/creepjs/ всё ещё не работает без установки отпечатка. Это противоречит вашему утверждению в соседней теме, что БАС без отпечатка полностью идентичен хрому. Увы, немного не идентичен

    Идентичен, но canvas, webgl, audio и webgl по умолчанию отключены. Их легко включить.

    На этом сайте видна другая проблема, client hints полученные из serviceWorker не изменяются.

    Исправлю в следующем патче.

    всё ещё не работает

    Если вы так говорите, то нужно было как минимум сообщить об этом заранее.

    Сейчас провёл несколько тестов и выяснил, что аргументы, указанные в действии "Настройки браузера", добавляют новые аргументы, если таковых нет в chrome_command_line.txt, и переопределяют существующие там.

    А еще можно просто почитать документацию https://i.imgur.com/WKKpkIU.png.

    chrome_command_line.txt - глобальные настройки, а в действии - локальные.

    Пример: допустим, мне по какой-либо причине хочется убрать аргумент --disk-cache-size=1 из аргументов командной строки браузера при запуске. Но увы, сделать я это никак не могу, максимум переопределить аргумент на, допустим, --disk-cache-size=2, что не решит моей проблемы.

    Вы можете убрать его из chrome_command_line.txt вообще. И задавать(или не задавать) как вам нравится в любом потоке.

    Я бы предложил при создании действия "Настройки браузера" копировать в поле с аргументами данные из chrome_command_line.txt, и далее при запуске полагаться только на аргументы из действия.

    Отлично. Давайте перечислять проблемы, которые мы получим:

    1. Все старые скрипты сразу же сломаются. К ним не будут применяться нужные настройки.
    2. При смене chrome_command_line.txt пользователь не увидит результата пока не изменит действие.
    3. Море проблем с слиянием настроек при пересохранении действия.
      и т. д.

    Эх, 2 месяца прошло, а при этом "недоработки", связанные с переходом на новый движок, похоже, так и не доделаны. Проверял запись http-запросов и инструменты разработчика хрома, как наиболее важое лично для меня. Первое так и болтается отключенным, а второе всё так же открывается в хроме в другом окне. Жаль...

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

  • Спасибо за работу!А когда запись запросов вернете?

  • @paini фидлером научись пользоваться и будет тебе счастье, минут 20 потратишь

  • @Bigma Я умею им пользоваться,вопрос в удобстве.Мне лично он там не мешает,как и многим.

  • @Bigma Запись запросов автоматом фильтрует технические заголовки, вроде Content-Length, не надо лазить по 2-м местам, данные уже распределены в нужные поля и.т.п. Это банально удобнее. Ничего не имею против фиделера, но если уже есть (был) более удобные инструмент, то почему бы не вернуть это удобство обратно в софт?

  • @support said in Выпущена 24.2.0 версия BrowserAutomationStudio:

    Вы можете убрать его из chrome_command_line.txt вообще. И задавать(или не задавать) как вам нравится в любом потоке.

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

    @support said in Выпущена 24.2.0 версия BrowserAutomationStudio:

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

    Нет, ну зачем сразу так... Разные люди трактуют выражение "обновление браузерного движка будет занимать меньше времени" по-разному. Я интерпретировал это как "каждый месяц будет обновление движка синхронно с тем, как гугл разрабатывает хром с отрывом в пару недель". А тут целых 2 месяца, и всего лишь ап версии без доп. фиксов и фич. И если так рассуждать, можно никогда не залатать те дыры, и на форуме всё также будут периодически проскакивать темы "о боже, я нашёл баг, там элементы select не отображаются". Хотя бы по 1 фиксу в релиз бы...

  • @DoctorKrolic said in Выпущена 24.2.0 версия BrowserAutomationStudio:

    Ага, только вот при компиляции это теряется.

    Нет, не теряется, этот файл сохраняется в проекте и передается пользователю. В последний раз это проверял 2 дня назад, но для бесплатной версии, в платной тоже должно работать.

    А тут целых 2 месяца, и всего лишь ап версии без доп. фиксов и фич.

    Благодаря новой системе ап версии проходил меньше недели.

    И если так рассуждать, можно никогда не залатать те дыры

    Покажите список дыр, пожалуйста.

    Хотя бы по 1 фиксу в релиз бы...

    Да, конечно, если по одной фиче делать каждый релиз, то в сумме на это уйдет меньше времени.

  • This post is deleted!
  • Она пока не особо бурная, но было бы хорошо прочитать комментарий Support о том, почему нельзя до сих пор выдать желающим код для сбора perfect canvas на сторонних сайтах. Или как он видит решение проблемы нехватки и устаревания отпечатков. А сейчас это устаревание будет постоянное, если браузер часто будет обновляться. Я так вижу ситуацию, что perfect canvas просто отправляется в утиль.

  • This post is deleted!
  • Потестировал, огорчился... Тикток по прежнему палит BAS... Язык в браузере не меняется в зависимости от IP(

  • @support said in Выпущена 24.2.0 версия BrowserAutomationStudio:

    Покажите список дыр, пожалуйста.

    Исправьте пожалуйста этот самый бесячий баг и костыля ему не придумал (
    Случаи когда он возникают гораздо больше, но думаю из этого одного будет понятно что на самом деле там.
    Просто любое маленькое браузерное действие возвращает ошибку таймаута (проверить существование, ява скрипт из 1 строки) и т.д.

    Ну еще бы поправить когда 2 потока одновременно получают 2 одинаковых browser_unique_id...
    Потоки такое чудить начинают в это время ;)

  • @Игорь777 said in Выпущена 24.2.0 версия BrowserAutomationStudio:

    Тикток по прежнему палит BAS

    Ради интереса попробовал подписаться через Google Chrome 92.0.4515.159, не получилось.
    TikTok на других вещах вас палит.

    евыпываы.gif