GeekProxy в BrowserAutomationStudio
В BAS для прокси есть ровно одно место: действие «Прокси». Ставите его в начало скрипта, и каждый запрос потока, включая DNS, уходит через указанный адрес. В гайде разбираем само действие и форматы строки, ловушку режима разработки, раздачу по одному прокси на поток из списка и то, что поменялось в 25.6.0.
Что нужно: активный план GeekProxy и данные прокси из кабинета. Настройка занимает минут десять.
Получить прокси1 Перед началом
BrowserAutomationStudio это программа под Windows, бесплатная, без регистрации. Браузер внутри собран на Chrome без поддержки WebRTC, так что утечка через WebRTC, которой болеют другие инструменты автоматизации, здесь отсутствует как класс. Премиум нужен только тем, кто продаёт скомпилированные скрипты.
- Два типа прокси: socks5 и http, с авторизацией или без
- Парсер понимает много форматов:
ip:port,username:password@ip:port,socks5://ip:port,socks:ip:port:username:password,http:username:password:ip:port. Схему лучше писать самому, а не надеяться на умолчание - При старте потока прокси всегда отсутствует. Действие «Прокси» его ставит, пустая строка или действие Reset снимает, и менять его можно посреди потока без перезапуска
- DNS-запросы идут через прокси, ваш резолвер не светится. Flash по умолчанию выключен и прокси всё равно не использует
Что понадобится
- Активный план GeekProxy (резидентские, ISP, датацентр или мобильные)
- Данные прокси из кабинета: хост, порт, логин, пароль
- BAS 25.x на Windows. Заметки к 25.6.0 пригодятся в абзаце про QUIC
- Поле Откуда взять
- Протокол HTTP / SOCKS5
- Хост IP или имя шлюза из кабинета
- Порт из кабинета
- Логин из кабинета
- Пароль из кабинета
2 Где взять данные прокси
- Войдите в кабинет GeekProxy
- Откройте план. У планов с оплатой за IP (датацентр, ISP) список адресов, порты, логин и пароль лежат прямо на карточке, а кнопка Export отдаёт весь список текстом
- У резидентских и мобильных планов нажмите Options. Панель Proxy Configuration соберёт строку логина со страной, городом и настройками сессии. Готовую строку копируйте из Proxy List
На резидентском плане соберите в Options sticky-сессию, если поток должен держать один выходной IP весь прогон. Тогда у каждого потока своя строка логина со своей сессией, а шлюз у всех общий. Экспорт плана с оплатой за IP это уже список, по адресу на строку, ровно то, что нужно разделу 5.
3 Добавляем действие «Прокси»
В редакторе скрипта найдите через поиск действие Прокси и поставьте его до первой загрузки страницы и до любого другого действия с браузером. Вики на этот счёт категорична: сначала прокси, иначе первые запросы уйдут с вашего собственного соединения. В поле значения вставьте одну строку.
http://LOGIN:PASSWORD@IP:PORT socks5://LOGIN:PASSWORD@IP:PORT http://IP:PORT
Третья строка это вариант для белого списка. Как только действие отработало, каждый сетевой запрос потока идёт через этот прокси. Нужен другой адрес дальше по тому же потоку? Вызовите «Прокси» ещё раз с новым значением. Пустое значение прокси снимает, действие Reset тоже.

Начиная с 25.6.0 BAS блокирует весь сетевой трафик между созданием профиля и действием «Прокси», чтобы сервисы Google никогда не увидели реальный IP. В том же релизе появился метод _set_proxy_for_next_profile со значениями "block", "direct" или строкой прокси, для тех, кто задаёт политику из кода.
4 «Только Добавить» против «Выполнить и Добавить»
На этом теряют по полдня. По умолчанию действие «Прокси» добавляется в режиме Только Добавить. Действие записывается в скрипт и выполняется в рабочем режиме, но пропускается при разработке. Вы запускаете скрипт в редакторе, проверка IP печатает ваш домашний адрес, и вы решаете, что прокси сломан. Нет. Переключите режим действия на Выполнить и Добавить, и оно отработает и при разработке.

5 По одному прокси на поток из списка
Когда потоков больше одного, строка прокси должна приходить из списка, а не сидеть в самом действии. Совет из вики: сделать ресурс типа файл или URL, тогда тот, кто запускает скомпилированный скрипт, сам решает, откуда брать прокси. По одному прокси на строку. Каждый поток берёт строку из ресурса и отдаёт её своему действию «Прокси», и так десять потоков оказываются на десяти адресах.

Дальше решите, что будет, когда прокси умрёт. BAS тут прямолинеен. Страница не загрузилась, текущий поток падает, счётчик ошибок растёт на единицу, поток перезапускается с новым прокси. Когда число ошибок переваливает за допустимое, останавливается весь скрипт. Поэтому допустимое число ошибок ставьте с оглядкой на размер списка. Действия, которые могут упасть, заворачивайте в функцию: упавшее действие внутри функции не утащит за собой весь поток.

QUIC и HTTP/3
Релиз 25.6.0 принёс новую библиотеку туннелирования и HTTP/3. В заметках сказано: http-прокси и SOCKS5 без UDP автоматически работают по старой версии протокола. SOCKS5 с UDP позволяет браузеру говорить через него по HTTP/3. Если сайт на новом протоколе грузится или отрисовывается криво, совет самого разработчика: отключить QUIC.
6 Проверка работы
Переведите действие «Прокси» в режим «Выполнить и Добавить» и сразу после него добавьте загрузку страницы https://ipinfo.io/json. Поле ip должно показать адрес прокси, а не ваш: на ISP и датацентре это адрес из кабинета, на Residential и Turbo любой адрес из пула в выбранной стране. Запустите два потока с двумя разными строками: должно быть два разных IP.
Чтобы вынести BAS за скобки, проверьте ту же строку из терминала:
curl -x socks5h://LOGIN:PASSWORD@IP:PORT https://ipinfo.io/json

7 Какой продукт GeekProxy подходит
BAS крутит по одному профилю браузера на поток и хочет для каждого правдоподобный стабильный адрес. Статический ISP даёт каждому профилю свой чистый IP, который переживает перезапуски, и грузится файловым ресурсом. Residential Turbo со sticky-сессиями делает то же для множества короткоживущих профилей, по строке логина на поток; его UDP на SOCKS5 заодно и есть то, что даёт браузеру 25.6.0 HTTP/3. Residential Flex работает только по TCP, так что ждите старый протокол, зато его фильтр выхода по Windows совпадает с Windows-отпечатком, который делает BAS. Мобильные подходят для проверки мобильных версий сайтов. Датацентр IPv4 берите для простых потоков сбора данных, где никто не смотрит на ASN.
8 Частые проблемы
Проверка IP в редакторе показывает мой адрес
Действие «Прокси» стоит в режиме «Только Добавить» и было пропущено. Переключите на «Выполнить и Добавить» на время разработки.
Первые запросы уходят без прокси
Действие «Прокси» стоит после загрузки страницы. Поток стартует без прокси, так что переносите действие в самое начало. На 25.6.0 и новее браузер блокирует трафик до установки прокси, и утечка превращается в ошибку.
Поток вылетает после одной неудачной страницы
Так и задумано. Неудачная загрузка роняет поток, счётчик ошибок растёт, поток перезапускается со следующим прокси. Поднимите допустимое число ошибок и заверните рискованные действия в функцию.
Строка не принимается
Сверьте её с форматами из раздела 1 и допишите схему: http:// или socks5://. Пробелов в строке быть не должно.
Сайт сломался после обновления на 25.6.0
HTTP/3 через SOCKS5 с UDP. Отключите QUIC, как советуют заметки к релизу, или возьмите строку http-прокси, она сама откатится на старый протокол.
Прокси для BrowserAutomationStudio
Sticky-сессии резидентских на каждый поток или статические списки ISP и датацентра под файловый ресурс, HTTP и SOCKS5.
Заказать