public void Execute(Arguments arguments) { try { SeleniumWrapper wrapper = SeleniumManager.CreateWrapper( arguments.Type.Value, arguments.Url?.Value, arguments.Timeout.Value, arguments.NoWait.Value, Scripter.Log, Scripter.Settings.UserDocsAddonFolder.FullName); int wrapperId = wrapper.Id; OnScriptEnd = () => { SeleniumManager.DisposeAllOpenedDrivers(); SeleniumManager.RemoveWrapper(wrapperId); SeleniumManager.CleanUp(); }; Scripter.Variables.SetVariableValue(arguments.Result.Value, new IntegerStructure(wrapper.Id)); } catch (DriverServiceNotFoundException ex) { throw new ApplicationException("Driver not found", ex); } catch (Exception ex) { throw new ApplicationException($"Error occured while opening new selenium instance. Url '{arguments.Url.Value}'. Message: {ex.Message}", ex); } }
public void Execute(Arguments arguments) { try { SeleniumManager.QuitCurrentWrapper(); } catch (Exception ex) { throw new ApplicationException($"Error occured while closing selenium instance. Message: {ex.Message}", ex); } }
public void Execute(Arguments arguments) { try { SeleniumWrapper wrapper = SeleniumManager.CreateWrapper( "chrome", "reddit.com", arguments.Timeout.Value, false, Scripter.Log, Scripter.Settings.UserDocsAddonFolder.FullName); int wrapperId = wrapper.Id; OnScriptEnd = () => { SeleniumManager.DisposeAllOpenedDrivers(); SeleniumManager.RemoveWrapper(wrapperId); SeleniumManager.CleanUp(); }; arguments.Search.Value = "/html/body/div[1]/div/div[2]/div[2]/div/div/div/div[2]/div[2]"; arguments.By.Value = "xpath"; SeleniumManager.CurrentWrapper.Click(arguments, arguments.Timeout.Value); arguments.Search.Value = "username"; arguments.By.Value = "id"; SeleniumManager.CurrentWrapper.TypeText(arguments.email.Value, arguments, arguments.Timeout.Value); arguments.Search.Value = "password"; arguments.By.Value = "id"; SeleniumManager.CurrentWrapper.TypeText(arguments.pword.Value, arguments, arguments.Timeout.Value); SeleniumManager.CurrentWrapper.PressKey("enter", arguments, arguments.Timeout.Value); var len = SeleniumManager.CurrentWrapper.RunScript("return document.getElementsByClassName(\"captcha -internal\").length"); if (len == "1") { RobotMessageBox.Show("Captcha detected, please solve the captcha"); } } catch (Exception ex) { throw new ApplicationException($"Error occured while opening new selenium instance. Message: {ex.Message}", ex); } }