Ура! Сбылась моя мечта о программном управлении браузером Chrome. Viva Seleium!

Нашел статью, как управлять Chrome через Web-driver API Selenium.

С Selenium я уже раньше работал через JS.NODE. И тогда у меня возникла мысль крутить цикл и принимать команды через текстовый файл, но реализация показалась слишком сложной.

Но мысль была верная, можно развернуть сервер Webdrive и через POST-запросы управлять Selenium.

Мой первый код по авторизации в Сбер-Бизнесе выглядит так:

&НаКлиенте
Процедура НачатьАвторизацию() Экспорт
	АдресВходаВБанк = "https://sbi.sberbank.ru:9443/ic/dcb";
	ТекстЗапроса = "
	|{
	|'capabilities': {
	|	'firstMatch': [
	|		{
	|			'browserName': 'chrome',
	|			'pageLoadStrategy': 'eager'
	|		}
	|	],
	|	'timeouts': {
	|		'Script Timeout': '1800,000',
	|		'Page Load Timeout': '1800,000',
	|		'Implicit Wait Timeout': '1800,000'
	|	}
	|}
	|}
	|";                                                       
	ТекстЗапроса = СтрЗаменить(ТекстЗапроса, "'", """");
	
	Р = SeleniumPOST("session", ТекстЗапроса);
	Сообщить("Ответ: " + Р.КодСостояния + " Текст:" + Р.Текст);
	
	Если Не Р.ОК Тогда
		СтопОшибка("При создании сессии Selenium. Код состояния: " + Р.КодСостояния + "Текст: " + Р.Текст);
		Возврат;
	КонецЕсли;
	
	sessionId = Р.json["value"]["sessionId"];
	
	Session = Новый Структура();
	Session.Вставить("sessionId", sessionId);
	Session.Вставить("sessionURL", "session/" + sessionId + "/");  
	
	SeleniumOpenSite(Session, АдресВходаВБанк);
	
	InputID = SeleniumGetElementByID(Session, "inputLogin").id;  
	Р = SeleniumSendKeys(Session, InputID, "L1224354" + Символы.ПС); 
	
	InputID = SeleniumGetElementByID(Session, "inputPassword").id; 
	Р = SeleniumSendKeys(Session, InputID, "18282822828" + Символы.ПС); 
 	
КонецПроцедуры

Как видите, все POST-запросы убраны в функции, работа ведется, как будто бы через скрипт. Скорость тут не особо важна, потому что эмулируются действия человека.

Открывается новое окно (сессия) Chrome, срабатывае эмуляция ввода клавишами логина и пароля, авторизация проходит и браузер переходит на страницу запроса СМС:

По-моему это свежий глоток для всех желающих программно управлять браузерами из 1С!