public static void Main(string[] args) { string currentUser = string.Empty; try { new DriverManager().SetUpDriver(new OperaConfig(), "Latest", Architecture.Auto); string OperaProfilePath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData), "Opera Software\\Opera Stable"); var jsonText = File.ReadAllText(Path.Combine(AppDomain.CurrentDomain.BaseDirectory, "accounts.json")); var jsonAccounts = JsonConvert.DeserializeObject <List <Account> >(jsonText); OperaOptions opt = new OperaOptions(); opt.PageLoadStrategy = PageLoadStrategy.Eager; opt.AddArgument($"user-data-dir={OperaProfilePath}"); opt.AddArguments(new[] { "--incognito" }); opt.AddAdditionalCapability("useAutomationExtension", false); opt.AddExcludedArgument("enable-automation"); OperaDriverService driverService = OperaDriverService.CreateDefaultService(); driverService.HideCommandPromptWindow = true; for (int i = 0; i <= jsonAccounts.Count; i++) { currentUser = jsonAccounts[i].name; KillAllDrivers(); IWebDriver driver = new OperaDriver(driverService, opt); try { driver.Url = "https://giris.hepsiburada.com"; driver.WaitForPageLoad(); IWebElement elMail = driver.IsElementPresent(By.XPath("//input[@id='txtUserName']")); IWebElement elPass = driver.IsElementPresent(By.XPath("//input[@id='txtPassword']")); IWebElement elBtnLogin = driver.IsElementPresent(By.XPath("//button[contains(text(),'Giriş')]")); if (elMail == null && elPass == null && elBtnLogin == null) { throw new Exception("CANNOT_FIND_LOGINPAGE"); } elMail.Click(); elMail?.Clear(); elMail?.SendKeys(jsonAccounts[i].name); WaitSomeSecond(1); elPass?.Clear(); elPass?.SendKeys(jsonAccounts[i].pass); WaitSomeSecond(1); var touchActions = new Actions(driver); touchActions.MoveToElement(elBtnLogin).Perform(); touchActions.SendKeys(Keys.Enter).Perform(); WaitSomeSecond(1); driver.WaitForPageLoad(); WaitSomeSecond(6); if (!CheckIsLoggedorRegistered(driver, true)) { throw new Exception("CANNOT_LOGIN"); } driver.Navigate().GoToUrl("https://hesabim.hepsiburada.com/iletisim-tercihlerim"); driver.WaitForPageLoad(); WaitSomeSecond(5); var mailNotify = driver.RunJsCommand("return document.querySelector('div.x0LYwM_8u4ipmQOzUpbEM:nth-child(2) > div:nth-child(2) > div:nth-child(1) > label:nth-child(1) > input');"); if (mailNotify != null) { var checkState = (bool)driver.RunJsCommand("return arguments[0].checked", new[] { mailNotify }); if (checkState) { driver.RunJsCommand("arguments[0].click()", new[] { mailNotify }); Console.WriteLine($"{jsonAccounts[i].name} başarılı"); WaitSomeSecond(3); } else { Console.WriteLine($"{jsonAccounts[i].name} zaten kapatılmış"); } } else { throw new Exception("CANNOT_FOUND_MAIL_NOTIFY"); } } catch (Exception e) { Console.WriteLine($"Hesap Adı : {jsonAccounts[i].name}"); Console.WriteLine(e); Thread.Sleep(TimeSpan.FromSeconds(new Random().Next(5, 10))); } driver.Quit(); Thread.Sleep(TimeSpan.FromSeconds(new Random().Next(30, 70))); } } catch (Exception e) { Console.WriteLine(e); } }
private void button1_Click(object sender, EventArgs e) { //IWebDriver Browser = new OperaDriver(); try { if ((textGroup.Text.Length != 0) || (textURL.Text.Length != 0)) { using (IWebDriver Browser = new OperaDriver()) { //Ожидание // WebDriverWait wait = new WebDriverWait(Browser, TimeSpan.FromSeconds(5)); Browser.Manage().Window.Maximize(); Browser.Navigate().GoToUrl(@"http://ltsu.ru/login/index.php"); Browser.FindElement(By.Id("username")).SendKeys("admin"); Browser.FindElement(By.Id("password")).SendKeys("ULT@015um"); Browser.FindElement(By.Id("loginbtn")).Click(); Browser.Navigate().GoToUrl(textURL.Text); System.Threading.Thread.Sleep(int.Parse(textTime.Text)); Browser.FindElement(By.CssSelector(".course-listing-actions div:nth-child(3) .dropdown a:first-child")).Click(); System.Threading.Thread.Sleep(int.Parse(textTime.Text)); Browser.FindElement(By.CssSelector(".dropdown-menu.dropdown-menu-right.menu.align-tr-br.show > a:nth-child(6)")).Click(); System.Threading.Thread.Sleep(2000); List <IWebElement> items = Browser.FindElements(By.CssSelector("#course-category-listings #course-listing .listitem .coursename")).ToList(); List <string> new_item = new List <string>(); for (int i = 0; i < items.Count; i++) { new_item.Add(items[i].GetAttribute("href")); } for (int i = 0; i < new_item.Count; i++) { Browser.Navigate().GoToUrl(new_item[i].ToString()); // wait.Until(item => item.FindElement(By.CssSelector(".listing-actions.course-detail-listing-actions > a:nth-child(3)")).Displayed); System.Threading.Thread.Sleep(1000); Browser.FindElement(By.CssSelector(".listing-actions.course-detail-listing-actions > a:nth-child(3)")).Click(); System.Threading.Thread.Sleep(1000); //папап Browser.FindElement(By.CssSelector(".pull-right input")).Click(); System.Threading.Thread.Sleep(2000); Browser.FindElement(By.CssSelector(".fcontainer.clearfix > #fitem_id_cohortlist > .felement > input")).SendKeys(textGroup.Text.Trim()); System.Threading.Thread.Sleep(2000); Browser.FindElement(By.CssSelector(".fcontainer.clearfix > #fitem_id_cohortlist > .felement > ul > li:first-child")).Click(); //Может быть Здесь еще нужно поставить Sleep Browser.FindElement(By.CssSelector(".modal-body > form")).Submit(); System.Threading.Thread.Sleep(int.Parse(textTime.Text)); } } } else { MessageBox.Show("Введите текст"); } } catch (NoSuchElementException element) { MessageBox.Show("Не найден элемент на сайте!!!!" + "\n" + element.Message); } catch (Exception ex) { MessageBox.Show(ex.Message); } // finally { Browser.Dispose(); } }