Есть отличная удаленная работа для php+codeception+jenkins+allure+docker спецов. 100% remote! Присоединиться к проекту

Анонимный selenium


(temagr) #1

Здравствуйте.

Подскажите кто в курсе.

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

В какую сторону мне копать?

Заранее благодарю.


(91bess) #2

Языки программирования, вроде, позволяют менять ip адрес (хотя не уверен). Но, как костыль, можно использовать разные прокси-сервера (в таком случае придется постоянно перезапускать браузер)


(Дмитрий Жарий) #3

Тут хорошо описано:

Selenium WebDriver запуск через proxy

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

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

import org.openqa.selenium.Proxy;
import org.openqa.selenium.WebDriver;
import org.openqa.selenium.firefox.FirefoxDriver;
import org.openqa.selenium.remote.DesiredCapabilities;
 
 
Proxy proxy = new Proxy();
proxy.setHttpProxy("localhost:8888");
 
DesiredCapabilities capabilities = new DesiredCapabilities();
capabilities.setCapability(CapabilityType.PROXY, proxy);
 
WebDriver driver = new FirefoxDriver(capabilities);

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

= = =

Я сам не пробовал, но предполагаю, что хорошего эффекта с прокси серверами можно добиться через связку Tor + Privoxy

@temagr, Если вы пойдете этим путем, пожалуйста отпишитесь о результатах. Вот статья по настройке:

How To Use Tor With Internet Explorer (IE) Web Browser (With Privoxy) For Beginners


(asolntsev) #4

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


(Jane Tymoschuk) #5

для подобной задачи использовала плагин https://addons.mozilla.org/en-US/firefox/addon/modify-headers/ для firefox, наверняка такой есть для хрома, но с прокси имхо универсальнее вариант будет