Ejemplo n.º 1
0
        public void StartGeeTest(Uri uri)
        {
            const int waitTime = 500;
            var       options  = new OpenQA.Selenium.Chrome.ChromeOptions();

            //options.AddArgument("-headless");//不显示界面
            options.AddArgument("--window-size=1920,1050");
            options.AddArgument("log-level=3");
            using OpenQA.Selenium.Chrome.ChromeDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver(options);
            driver.Navigate().GoToUrl(uri);
            //反爬验证webdriver
            driver.ExecuteJavaScript("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})");
            driver.Navigate().GoToUrl(uri);
            Thread.Sleep(waitTime);//等待js执行
            driver.ExecuteScript("header.loginLink(event)");
            Console.WriteLine("点击《登录/注册》按钮");
            Thread.Sleep(waitTime);
            driver.ExecuteScript("loginObj.changeCurrent(1);");
            Console.WriteLine("点击 《密码登录》按钮");
            Thread.Sleep(waitTime);
            driver.ExecuteScript("$('.contactphone').val('17712345678')");
            driver.ExecuteScript("$('.contactword').val('2020')");
            Console.WriteLine("输入账号密码");
            Thread.Sleep(waitTime);
            driver.ExecuteScript("loginObj.loginByPhone(event);");
            Console.WriteLine("点击《登录》按钮");
            Thread.Sleep(waitTime);
            SeleniumVertifyCode slideVerificationCode = new SeleniumVertifyCode();
            var flag = slideVerificationCode.Pass(driver);

            Console.WriteLine($"验证结果{flag}");
        }
Ejemplo n.º 2
0
 private void BtnAra_Click(object sender, EventArgs e)
 {
     try
     {
         if (!string.IsNullOrWhiteSpace(txtAranacakKelime.Text))
         {
             driver = new OpenQA.Selenium.Chrome.ChromeDriver();
             driver.Navigate().GoToUrl("https://www.google.com/search?q=" + txtAranacakKelime.Text);
             //Sonuçları döndür
             int toplam = driver.FindElements(By.TagName("cite")).Count;
             for (int i = 0; i < toplam; i++)
             {
                 ReadOnlyCollection <IWebElement> Liste = driver.FindElements(By.XPath("//*[@id='rso']/div/div/div[" + i + "]/div/div/div[1]/a[1]"));
                 foreach (IWebElement result in Liste)
                 {
                     string link = result.GetAttribute("href");
                     lstSonuclar.Items.Add(link);
                 }
             }
         }
         else
         {
             MessageBox.Show("Lütfen aranacak bir kelime giriniz", "Uyarı", MessageBoxButtons.OK, MessageBoxIcon.Warning);
         }
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.Message);
     }
 }
Ejemplo n.º 3
0
        static void Main(string[] args)
        {
            //Launch Application
            IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver();

            driver.Navigate().GoToUrl("http://www.way2automation.com/angularjs-protractor/webtables/");
            Thread.Sleep(2000);


            // Add user on the table
            driver.FindElement(By.XPath("/html/body/table/thead/tr[2]/td/button")).Click();

            Thread.Sleep(2000);

            //Read Data from Excel sheet
            string xlFilePath = "C:/Users/Moditime/Desktop/koena/Automation/DataFile.xlsx";

            ExcelAPI obj = new ExcelAPI(xlFilePath);

            var cellValue = obj.GetCellData("Sheet1", "FirstName", 1);

            Console.WriteLine("Cell Value using Column Name: " + cellValue);
            Console.Read();

            //Create user
            obj.CreateUser();
        }
Ejemplo n.º 4
0
        static string GrabErrorLog(string errorLogUrl, string errorDetailBase)
        {
            IWebDriver driver = null;
            try
            {
                driver = new OpenQA.Selenium.Chrome.ChromeDriver();

                driver.Navigate().GoToUrl(errorLogUrl);

                Thread.Sleep(30);

                var element = driver.FindElement(By.XPath("//option[@value='/elab']"));
                element.Click();
                element.Submit();

                Thread.Sleep(30);

                var table = driver.FindElement(By.Id("dgdResults"));
                var result = ((IJavaScriptExecutor)driver).ExecuteScript("return arguments[0].innerHTML;", table).ToString();
                result = result.Replace("ErrorLogEventDetail.aspx", errorDetailBase);
                result = System.Text.RegularExpressions.Regex.Replace(result, @"javascript:__doPostBack[^>""]*", "");
                return "<table>" + result + "</table>";
            }
            catch
            {
                throw;
            }
            finally
            {
                if (driver != null)
                    driver.Quit();
            }
        }
Ejemplo n.º 5
0
        public void WhenDepartureEqualDestination()
        {
            IWebDriver browser;
            bool       passTest = false;

            browser = new OpenQA.Selenium.Chrome.ChromeDriver();
            browser.Manage().Window.Maximize();
            browser.Navigate().GoToUrl("http://avia.321.by/");
            ClassPageFactory pageObject = new ClassPageFactory(browser);

            pageObject.Place_from.Clear();
            pageObject.Place_from.SendKeys("Минск");
            System.Threading.Thread.Sleep(1000);
            pageObject.Place_from.SendKeys(OpenQA.Selenium.Keys.Enter);

            pageObject.DepartureDate_first.Click();
            System.Threading.Thread.Sleep(1000);
            pageObject.Calendar_datefirst.Click();

            pageObject.Place_to.Clear();
            pageObject.Place_to.SendKeys("Минск");
            System.Threading.Thread.Sleep(1000);
            pageObject.Place_to.SendKeys(OpenQA.Selenium.Keys.Enter);

            pageObject.DepartureDate_second.Click();
            System.Threading.Thread.Sleep(1000);
            pageObject.Calendar_datesecond.Click();

            pageObject.SearchButton.Click();
            System.Threading.Thread.Sleep(5000);

            passTest = pageObject.WarningWindow.Displayed;
            Assert.IsTrue(passTest, "Departure City Equal Destination City! Input Error!");
        }
Ejemplo n.º 6
0
        public void TestNewCode(string UrlPath)
        {
            using (var driver = new OpenQA.Selenium.Chrome.ChromeDriver())
            {
                UrlPath = "https://privatepath.co.uk/browse/" + UrlPath;

                driver.Navigate().GoToUrl(UrlPath);

                System.Threading.Thread.Sleep(15000);
                IWebElement PageButton = driver.FindElementById("opsbar-opsbar-transitions");
                var         myButton   = PageButton.FindElement(By.Id("action_id_91"));
                myButton.Click();
                IWebElement PageButton2 = driver.FindElementByClassName("buttons");
                var         myButton2   = PageButton2.FindElement(By.ClassName("aui-button"));
                myButton2.Click();
                IWebElement PageElements = driver.FindElement(By.ClassName("item-attachments"));
                var         myAttach     = PageElements.FindElements(By.TagName("li"));
                foreach (var item in myAttach)
                {
                    Console.WriteLine(item.Text);
                    Console.WriteLine(item.GetAttribute("data-downloadurl").ToString());
                    if (item.GetAttribute("data-downloadurl").ToString().StartsWith("application/zip:"))
                    {
                        item.Click();
                        System.Threading.Thread.Sleep(1000);
                        Console.WriteLine("Downloading File...");
                    }
                }
            }
        }
Ejemplo n.º 7
0
        public void GivenUserIsOnMainPage()
        {
            IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver(@"D:\1\");

            driver.Manage().Window.Maximize();
            driver.Navigate().GoToUrl("https://loving-hermann-e2094b.netlify.app/index.html");
            signUpPage = new SignUpPage(driver);
        }
Ejemplo n.º 8
0
        public static List <string> getter()
        {
            IWebDriver Browser = new OpenQA.Selenium.Chrome.ChromeDriver();

            Browser.Manage().Window.Maximize();
            Browser.Navigate().GoToUrl("http://apip.gov.gn/?q=content/annonces-l%C3%A9gales");
            Regex RCCM = new Regex("\\d{3}[.]\\d{3}[A-Z]|\\d{6}[A-Z]|\\d{6}|\\d{3}[.]\\d{3}");
            Regex Date = new Regex("\\d{2}[/]\\d{2}[/]\\d{4}|\\d{1,2}\\s\\w{3,10}[,]\\s\\d{4}");

            List <string> output = new List <string>();

            try
            {
                bool flag = true;
                while (true)
                {
                    if (flag)
                    {
                        flag = !flag;

                        ReadOnlyCollection <IWebElement> list      = Browser.FindElements(By.ClassName("views-field-title"));
                        ReadOnlyCollection <IWebElement> listDates = Browser.FindElements(By.ClassName("views-field-body-1"));

                        for (int i = 0; i < list.Count; i++)
                        {
                            string combine = "";
                            string date    = listDates[i].Text.ToString();
                            combine += list[i].Text.ToString() + "|";
                            Match  match = RCCM.Match(date);
                            string tmp   = match.Value.ToString();
                            combine += tmp + "|";
                            match    = Date.Match(date);
                            tmp      = match.Value.ToString();
                            combine += tmp;
                            output.Add(combine);
                        }
                    }
                    else
                    {
                        flag = !flag;
                    }



                    IWebElement element = Browser.FindElement(By.XPath("//A[@title='Go to next page'][text()='next ›']"));

                    Actions actions = new Actions(Browser);

                    actions.MoveToElement(element);
                    actions.Click().Perform();
                }
            }
            catch
            {
            }
            Browser.Quit();
            return(output);
        }
Ejemplo n.º 9
0
        public void Original()
        {
            //https://www.cnblogs.com/zhaotianff/p/11330810.html
            using (IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver())
            {
                driver.Navigate().GoToUrl("");  //driver.Url = "http://www.baidu.com"是一样的

                var account = driver.FindElement(By.Id("log_ph"));
                account.Click();
                account.SendKeys("");

                var password = driver.FindElement(By.Id("log_ps"));
                password.Click();
                password.SendKeys("");

                var login = driver.FindElement(By.Id("log_ok"));
                login.Click();

                driver.Navigate().GoToUrl("");

                var page1 = driver.PageSource;
                driver.SwitchTo().Frame(0);
                var page = driver.PageSource;

                var searchButton = driver.FindElement(By.CssSelector(".search-input"));
                searchButton.Click();

                var searchBox = driver.FindElement(By.Id("cc"));
                searchBox.SendKeys("UW123CNMODIFY\nUW456CNMODIFY");//abc\nabc\nabc

                var search = driver.FindElement(By.CssSelector(".button_box> .el-button"));
                search.Click();

                var allSelect = driver.FindElement(By.CssSelector(".has-gutter .el-checkbox__inner"));
                allSelect.Click();

                var informationButton = driver.FindElement(By.CssSelector(".el-dropdown:nth-child(1) span"));
                informationButton.Click();

                Thread.Sleep(1000);

                var informationAction = driver.FindElement(By.CssSelector(".el-dropdown-menu__item--divided"));
                informationAction.Click();
            }
        }
        public IWebDriver NavigatetoApp(string url)
        {
            IWebDriver myChrome;

            myChrome = new OpenQA.Selenium.Chrome.ChromeDriver();
            myChrome.Navigate().GoToUrl(url);
            myChrome.Manage().Window.Maximize();
            return(myChrome);
        }
Ejemplo n.º 11
0
 static void Main(string[] args)
 {
    
     //Create the reference
     IWebDriver driver =new OpenQA.Selenium.Chrome.ChromeDriver();
     driver.Navigate().GoToUrl("http://www.google.com");
     IWebElement ele = driver.FindElement(By.Id("gs_htif0"));
     ele.SendKeys("Execute Automation");
 }
Ejemplo n.º 12
0
        public void GivenILoginIntoMyApp()
        {
            // ScenarioContext.Current.Pending();
            OpenQA.Selenium.IWebDriver webdriver = new OpenQA.Selenium.Chrome.ChromeDriver();
            webdriver.Navigate().GoToUrl("http://automationpractice.com/index.php?controller=authentication&back=my-account");
            loginPage = new LoginPage(webdriver);

            myAccountPage = new MyAccountPage(webdriver);
            Console.WriteLine("Given");
        }
Ejemplo n.º 13
0
        static void Main(string[] args)
        {
            StringBuilder message  = new StringBuilder();
            decimal       pageSize = 30m;
            int           index    = 0;

            using (IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver())
            {
                driver.Navigate().GoToUrl(Url);  //driver.Url = "http://www.baidu.com"是一样的

                var account = driver.FindElement(By.Id("log_ph"));
                account.Click();
                account.SendKeys(UserName);

                var password = driver.FindElement(By.Id("log_ps"));
                password.Click();
                password.SendKeys(Password);

                var login = driver.FindElement(By.Id("log_ok"));
                login.Click();

                //driver.Navigate().GoToUrl("");
                //由于这边是异步加载,需要等待一定的时候,异步加载页面才能加载出来。
                Thread.Sleep(20000);

                //var page1 = driver.PageSource;
                driver.SwitchTo().Frame(0);
                //var page = driver.PageSource;

                var pageNumber = Math.Ceiling(TrackingNumbers().Length / pageSize);
                var flag       = true;
                for (int i = 0; i < pageNumber; i++)
                {
                    try
                    {
                        var trackingNumbers = TrackingNumbers().Skip(i * (int)pageSize).Take((int)pageSize).ToArray();
                        index = i;
                        Information(driver, trackingNumbers, i);
                        message.AppendLine($"index:{index},Success!");
                    }
                    catch (Exception ex)
                    {
                        flag = false;
                        message.AppendLine($"index:{index},Error:{ex.Message}");
                    }
                }
                if (flag)
                {
                    message.AppendLine("all success!");
                }
            }
            Console.WriteLine(message.ToString());
            Console.ReadKey();
        }
Ejemplo n.º 14
0
        private void SeleniumVertifyCode(Uri uri)
        {
            var options = new OpenQA.Selenium.Chrome.ChromeOptions();

            options.AddArgument("-headless");
            options.AddArgument("log-level=3");
            using IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver(options);
            driver.Manage().Window.Maximize();
            driver.Navigate().GoToUrl(uri);
            driver.Manage().Cookies.AddCookie(new Cookie("QCCSESSID", Cookie, ".qcc.com", "/", null));
            driver.Navigate().GoToUrl(uri);
            driver.ExecuteJavaScript("Object.defineProperty(navigator, 'webdriver', {get: () => undefined})");
            var slide           = driver.FindElement(By.CssSelector("#nc_1_n1z"));
            var verifyContainer = driver.FindElement(By.CssSelector(".nc-lang-cnt"));
            var width           = verifyContainer.Size.Width;
            var action          = new Actions(driver);

            action.ClickAndHold(slide).Perform();
            Random    random    = new Random();
            int       offset    = 0;
            const int minOffset = 10;
            const int maxOffset = 30;

            while (width > offset)
            {
                offset += random.Next(minOffset, maxOffset);
                action.MoveByOffset(offset, 0).Perform();
                var code = driver.FindElement(By.CssSelector(".nc-lang-cnt")).Text;
                if (code.Contains("验证通过"))
                {
                    break;
                }
                System.Threading.Thread.Sleep(offset * minOffset);
            }
            //截图测试
            //Screenshot screenShotFile = ((ITakesScreenshot)driver).GetScreenshot();
            //string img_url = Environment.CurrentDirectory + "\\test.png";
            //screenShotFile.SaveAsFile(img_url, ScreenshotImageFormat.Png);
            action.Click(driver.FindElement(By.CssSelector("#verify"))).Perform();
            driver.Quit();
        }
        static void Main(string[] args)
        {
            using (var driver = new OpenQA.Selenium.Chrome.ChromeDriver())
            {
                driver.Navigate().GoToUrl("https://www.bing.com/");
                driver.FindElementById("sb_form_q").SendKeys("Selenium WebDriver");
                driver.FindElementById("sb_form_go").Click();

                Console.WriteLine("OK");
                Console.ReadKey(intercept: true);
            }
        }
Ejemplo n.º 16
0
        // Поиск элементов на странице.


        //Попытка установки значения полю на странице


        public void StartProcessing()
        {
            try
            {
                using (IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver())
                {
                    Message?.Invoke("Запуск браузера");
                    System.Threading.Thread.Sleep(3000);
                    driver.Navigate().GoToUrl("https://websbor.gks.ru/webstat/#!/gs/statistic-codes");
                    System.Threading.Thread.Sleep(3000);


                    ElementPageManager pageManager = new ElementPageManager(driver);


                    foreach (var organization in organizations)
                    {
                        Message?.Invoke(string.Format("Установка значение полю ИНН  {0}", organization.Inn));
                        pageManager.TextEntityInn = organization.Inn;
                        pageManager.ButtonClick();
                        pageManager.FindTableInPage(organization);

                        //SendKeyPage(webElements.entityInn, organization.Inn);
                        //webElements.entityButton.Click();



                        //if (element is null)
                        //{
                        //    errorStep = -1;
                        //    throw new Exception("Не найден элемент на странице. Работа программы невозможна");
                        //}
                        //element.Clear();
                        //element.SendKeys(organization.Inn);
                        //btn.Click();

                        System.Threading.Thread.Sleep(1000);

                        //Actions actions = new Actions(browser);
                        // actions.MoveToElement(btn.FirstOrDefault()).Build();//.Perform();
                        // btn.FirstOrDefault().Click();
                    }

                    // System.Threading.Thread.Sleep(5000000);
                }
            }
            catch (Exception ex)
            {
                //errorStep--;
                //if (errorStep < 0)
                throw ex;
            }
        }
Ejemplo n.º 17
0
        static void Main(string[] args)
        {
            using (var driver = new OpenQA.Selenium.Chrome.ChromeDriver())
            {
                driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(3);
                driver.Navigate().GoToUrl("https://www.bing.com/");
                driver.FindElementById("sb_form_q").SendKeys("Selenium WebDriver");
                driver.FindElementByClassName("search").Click();

                Console.WriteLine("OK");
                Console.ReadKey(intercept: true);
            }
        }
 internal void StartSeChromeUrl(string url, ref IWebDriver Drv)
 {
     try
     {
         Drv = new OpenQA.Selenium.Chrome.ChromeDriver();
         // Drv.Manage().Window.Maximize();
         Drv.Navigate().GoToUrl(@url);
     }
     catch (Exception ex)
     {
         MessageBox.Show(ex.ToString());
     }
 }
Ejemplo n.º 19
0
        public void Main()
        {
            IWebDriver browser;

            browser = new OpenQA.Selenium.Chrome.ChromeDriver();
            browser.Manage().Window.Maximize();
            browser.Navigate().GoToUrl("https://www.anywayanyday.com/en/");

            IWebElement cityFrom = browser.FindElement(By.ClassName("awadWidget-aviaInput"));

            cityFrom.SendKeys("Moscow" + OpenQA.Selenium.Keys.Enter);
            System.Threading.Thread.Sleep(2000);

            IWebElement cityTo = browser.FindElement(By.XPath("//*[@id=\"sidebar\"]/div/div/div/div/div[2]/div[3]/div/div[2]/div/input"));

            cityTo.SendKeys("San Francisco" + OpenQA.Selenium.Keys.Enter);

            IWebElement date = browser.FindElement(By.XPath("//*[@id=\"sidebar\"]/div/div/div/div/div[2]/div[3]/div/div[4]/div/div[1]"));

            date.Click();
            System.Threading.Thread.Sleep(2000);

            IWebElement datePick = browser.FindElement(By.XPath("//*[@id=\"sidebar\"]/div/div/div/div/div[2]/div[3]/div/div[5]/div/div[2]/div[2]/table/tbody/tr[5]/td[4]/span"));

            datePick.Click();
            System.Threading.Thread.Sleep(2000);

            IWebElement returnFlight = browser.FindElement(By.XPath("//*[@id=\"sidebar\"]/div/div[1]/div/div/div[2]/div[4]/div[1]/div[1]"));

            returnFlight.Click();
            System.Threading.Thread.Sleep(2000);
            try
            {
                IWebElement datePickSecond = browser.FindElement(By.XPath("//*[@id=\"sidebar\"]/div/div[1]/div/div/div[2]/div[3]/div/div[5]/div/div[2]/div[2]/table/tbody/tr[5]/td[2]/span"));
                datePickSecond.Click();
                System.Threading.Thread.Sleep(2000);
                Assert.AreNotEqual(null, browser.FindElement(By.XPath("//*[@id=\"sidebar\"]/div/div[1]/div/div/div[2]/div[2]/ul/li[2]/div[1]/div[1]/div[1]/div[1]")));
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex.Message.ToString());
            }

            IWebElement searchFlight = browser.FindElement(By.XPath("//*[@id=\"sidebar\"]/div/div/div/div/div[2]/div[4]/a"));

            searchFlight.Click();
            System.Threading.Thread.Sleep(2000);
        }
        public void WhenSecondDateEarlierFirst()
        {
            bool       passTest   = false;
            bool       isSelected = false;
            IWebDriver Browser;

            Browser = new OpenQA.Selenium.Chrome.ChromeDriver();
            Browser.Manage().Window.Maximize();
            Browser.Navigate().GoToUrl("http://avia.321.by/");

            IWebElement InputFrom = Browser.FindElement(By.Id("from_name"));

            InputFrom.Clear();
            InputFrom.SendKeys("Лондон");
            System.Threading.Thread.Sleep(1100);
            //   InputFrom.SendKeys(OpenQA.Selenium.Keys.Enter);

            IWebElement InputTo = Browser.FindElement(By.Id("to_name"));

            InputTo.SendKeys("Минск");
            System.Threading.Thread.Sleep(1000);
            InputTo.SendKeys(OpenQA.Selenium.Keys.Enter);

            IWebElement DepatrureDate_first = Browser.FindElement(By.Id("departure_date"));

            DepatrureDate_first.Click();
            IWebElement Calendar_datefirst = Browser.FindElement(By.ClassName("date_1548882000000"));

            System.Threading.Thread.Sleep(1000);
            Calendar_datefirst.Click();

            IWebElement DepatrureDate_second = Browser.FindElement(By.Id("departure_date_1"));

            DepatrureDate_second.Click();

            IWebElement Calendar_datesecond = Browser.FindElement(By.ClassName("date_1548795600000"));

            System.Threading.Thread.Sleep(1000);
            Calendar_datesecond.Click();
            isSelected = Calendar_datesecond.Selected;

            if (!isSelected)
            {
                passTest = true;
            }

            Assert.IsTrue(passTest, "Second date is earlear then first. Input Error.");
        }
Ejemplo n.º 21
0
        public static void Main(string[] args)
        {
            Console.WriteLine("Selenium Test Project - 1");

            // TODO: Implement Functionality Here
            IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver("C:\\Users\\guptap\\Documents\\SharpDevelop Projects\\Test\\Selenium1");


//CHROME : GET TEXT PROPERTIES
            driver.Navigate().GoToUrl("https://www.sqs.com/en/index.php");
            //System.Threading.Thread.Sleep(10000);


            //working with css
            IWebElement wElement         = driver.FindElement(By.CssSelector(".col-xs-8.teaser-text>h2"));
            String      wElementColorRGB = wElement.GetCssValue("color");

            Console.WriteLine("RGB value of the text is :" + wElementColorRGB);

            //split and set
            StringToHexa objClass = new StringToHexa();

            objClass.splitAndSet(wElementColorRGB);

//RGB to HEX using System.Drawing.Color class
            //String s = StringToHexa.HexConverter(wElementColorRGB);


//RGB to HEX using algorithm
            //Color myColor = Color.FromArgb(255, 181, 178);
            //String hex = myColor.R.ToString("X2") + myColor.G.ToString("X2") + myColor.B.ToString("X2");


//RGB to HEX using struct
            RGB    data  = new RGB(rColor, gcolor, bColor);
            String value = RGBToHexadecimal(data);

            Console.WriteLine("The text color(RGB) of sub heading Transforming The World Through Quality is: "
                              + value);

            if (expectedHexaValueOfheading == value)
            {
                Console.WriteLine("expected value achieved");
            }
            Console.ReadLine();
            //driver.Close();
            //driver.Quit();   css : .col-xs-8.teaser-text>h2 //xpath not working : //div[class='col-xs-8 teaser-text']/h2
        }
Ejemplo n.º 22
0
        private void task2()
        {
            IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver();

            driver.Navigate().GoToUrl("https://www.tutu.ru");

            IWebElement el = driver.FindElement(By.ClassName("j-station_input_from"));

            sendkeys(el, "Москва");
            el = driver.FindElement(By.ClassName("j-station_input_to"));
            sendkeys(el, "Санкт-Петербург");

            el = driver.FindElement(By.ClassName("j-date_to"));
            sendkeys(el, "3.10.2019");
            driver.FindElement(By.ClassName("m-border_inner")).Click();
        }
Ejemplo n.º 23
0
        static void Main(string[] args)
        {
            Console.WriteLine("Hello World!");

            //    driver.Navigate().GoToUrl("https://xue.17xueba.com/views/activity/wishes/view.vpage?id=35&type=3&p=5e09a152246cff75f8669c69");  //driver.Url = "http://www.baidu.com"是一样的

            DateTime startTime, ones;

            startTime = DateTime.Now;

            int count = 1000;

            for (int i = 0; i < count; i++)
            {
                try
                {
                    Stopwatch sw = new Stopwatch();

                    using (IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver())
                    {
                        sw.Start();
                        driver.Navigate().GoToUrl("https://xue.17xueba.com/views/activity/wishes/view.vpage?id=35&type=3&p=5e09a152246cff75f8669c69");
                        Thread.Sleep(new Random().Next(1, 2) * 1000);
                        driver.FindElements(By.ClassName("wishes-btn"))[0].Click(); //模拟鼠标点击元素
                        Thread.Sleep(new Random().Next(1, 2) * 1000);

                        var byXPath = driver.FindElements(By.XPath("/html/body/div/section/div/section/div[2]/div[1]/div/div/div[2]/div[3]/div"));

                        sw.Stop();
                        ones = DateTime.Now;
                        TimeSpan tss = startTime.Subtract(ones);
                        Console.WriteLine("\r\n目前点赞票数:" + byXPath[0].Text + "\r\n本次刷票计划点赞票数:" + count + "\r\n本次刷票已点赞票数:" + (i + 1) + "\r\n本次剩余点赞票数:" + (count - i - 1) + "\r\n本次点赞耗时(秒):" + sw.Elapsed.TotalSeconds.ToString() + "\r\n程序执行时间:" + tss.ToString(@"hh\:mm\:ss"));
                        driver.Close();
                    }
                }
                catch (Exception ex)
                {
                    Console.WriteLine("\r\n" + ex + "\r\n");
                    //throw;
                }
            }
            Console.WriteLine("\r\n本次刷票结束,按任意键退出");
            Console.ReadLine();
        }
Ejemplo n.º 24
0
        public void StartProcessing()
        {
            using (IWebDriver driver = new OpenQA.Selenium.Chrome.ChromeDriver())
            {
                log.Info("Запуск браузера");
                System.Threading.Thread.Sleep(3000);
                driver.Navigate().GoToUrl("https://websbor.gks.ru/webstat/#!/gs/statistic-codes");
                System.Threading.Thread.Sleep(3000);


                ElementPageManager pageManager = new ElementPageManager(driver, log);


                foreach (var organization in organizations)
                {
                    log.Debug(string.Format("Установка значение полю ИНН  {0}", organization.Inn));
                    pageManager.TextEntityInn = organization.Inn;
                    pageManager.ButtonClick();
                    pageManager.FindTableInPage(organization);

                    System.Threading.Thread.Sleep(1000);
                }

                log.Info("Работа с браузером закончена");
            }


            //DirectoryInfo dirInfo = new DirectoryInfo(string.Format("{0}\\{1}", programSetting.Path, check.ToString()));
            //if (!dirInfo.Exists)
            //    dirInfo.Create();

            //String NewDateFormat = DateTime.Now.ToString("yyyy-MM-dd-HH-mm");

            //var fileInfo = new FileInfo(string.Format(dirInfo.FullName + @"\\{0} {1}.xlsx", NewDateFormat, Guid.NewGuid().ToString()));
            var fileInfo = new FileInfo(string.Format("Report\\{0}.xlsx", Guid.NewGuid()));

            if (!fileInfo.Directory.Exists)
            {
                fileInfo.Directory.Create();
            }

            DataSetProcessing(out DataSet bookStore);
            new ExcelManager(log).Save(bookStore, fileInfo);
        }
Ejemplo n.º 25
0
        public void TestMethod1()
        {
            var capabilities = DesiredCapabilities.InternetExplorer();

            var driver = new OpenQA.Selenium.Chrome.ChromeDriver(@".\");

            driver.Navigate().GoToUrl("http://www.google.com/ncr");

            Console.WriteLine(driver.Title);



            IWebElement query = driver.FindElement(By.Name("q"));

            query.SendKeys("TestingBot");

            query.Submit();

            Console.WriteLine(driver.Title);



            driver.Quit();
        }
Ejemplo n.º 26
0
        public void RunActions(List <Action> actions)
        {
            var missedActions = new List <Action>();

            foreach (var action in actions)
            {
                try
                {
                    if (action.ActionType == ActionType.Wait)
                    {
                        Thread.Sleep(TimeSpan.Parse($"{action.InputData}"));
                        continue;
                    }

                    if (action.ActionType != ActionType.Navigate)
                    {
                        IWebElement element = null;

                        if (!string.IsNullOrEmpty(action.ObjectID))
                        {
                            element = driver.FindElementById(action.ObjectID);
                        }
                        else if (!string.IsNullOrEmpty(action.Label))
                        {
                            element = driver.FindElementByClassName(action.Label);
                        }

                        Console.WriteLine($"Running {action.ActionType} {action.InputData} {action.Label} {action.ObjectID}");

                        switch (action.ActionType)
                        {
                        case ActionType.ClearText:
                            int n = 18;
                            while (n > 0)
                            {
                                element.SendKeys(Keys.Backspace);
                                n--;
                            }
                            break;

                        case ActionType.Click:
                            //element.Click();
                            Actions webAction = new Actions(driver);
                            webAction.MoveToElement(element).Click().Perform();
                            break;

                        case ActionType.InputText:
                        case ActionType.InputUsername:
                        case ActionType.InputPassword:
                            element.SendKeys(action.InputData);
                            break;

                        case ActionType.EnterPush:
                            element.SendKeys(Keys.Enter);
                            break;
                        }
                    }
                    else if (action.ActionType == ActionType.Navigate)
                    {
                        driver.Url = action.InputData;
                        driver.Navigate();
                    }
                }
                catch (Exception ex)
                {
                    if (action.Optional)
                    {
                        Console.WriteLine($"ERROR : {action.InputData} {action.ActionType} {action.Label} {action.ObjectID} action missed");
                        missedActions.Add(action);
                        continue;
                    }

                    throw ex;
                }
            }

            if (missedActions.Any())
            {
                string errorMessage = "";
                foreach (var action in missedActions)
                {
                    errorMessage += $"Exception on {action.Label} {action.ObjectID}";
                }

                throw new Exception(errorMessage);
            }
        }
Ejemplo n.º 27
0
 private static bool DoesPostReturnError(string name, string email, string messageText)
 {
     var driversDir =
       new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory).Parent.Parent.Parent.GetDirectories()
           .First(d => d.Name == "Drivers");
     using (var driver = new OpenQA.Selenium.Chrome.ChromeDriver(driversDir.FullName))
     {
         driver.Url = BaseUrl + ContactResource;
         driver.Navigate();
         driver.FindElement(By.CssSelector(ContactNameInputSelector)).SendKeys(name);
         driver.FindElement(By.CssSelector(ContactEmailInputSelector)).SendKeys(email);
         driver.FindElement(By.CssSelector(ContactMessageBoxInputSelector)).SendKeys(messageText);
         driver.FindElement(By.CssSelector(ContactSendSelector)).Click();
         Thread.Sleep(1000); // Wait for page navigation to finish
         try
         {
             var p = driver.FindElements(By.CssSelector(ContactErrorSelector));
             if (p == null || p.Count == 0) return false;
             return p.First().Text.Contains("Server Error");
         }
         catch (Exception)
         {
         }
         return false;
     }
 }
Ejemplo n.º 28
0
        public void Check(string login, string password, IWebDriver browser)
        {
            var store = new Store();
            var user  = new User(login, password);

            var fs = new FileStream(store.LogFileName("Sears"), FileMode.Append, FileAccess.Write);
            var sw = new StreamWriter(fs);

            sw.WriteLine(DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss") + "|" + login + "|false");
            sw.Close();
            fs.Close();

            try
            {
                browser = new OpenQA.Selenium.Chrome.ChromeDriver();
                browser.Manage().Window.Maximize();
                browser.Navigate().GoToUrl("http://www.sears.com/");
                browser.Navigate()
                .GoToUrl(
                    "https://www.sears.com/universalprofile/userLogonForm?upid=3&formName=LOGIN&URL=http%3A%2F%2Fwww.sears.com%2F");
                Thread.Sleep(1000);
                browser.FindElement(By.XPath("//*[@id=\"email\"]")).Click();
                browser.FindElement(By.XPath("//*[@id=\"email\"]")).Clear();
                browser.FindElement(By.XPath("//*[@id=\"email\"]")).SendKeys(user.Login);
                browser.FindElement(By.XPath("//*[@id=\"password\"]")).Click();
                browser.FindElement(By.XPath("//*[@id=\"password\"]")).Clear();
                browser.FindElement(By.XPath("//*[@id=\"password\"]")).SendKeys(user.Password);
                browser.FindElement(By.CssSelector("button.shcBtn.shcBtnCTA.signIn")).Click();
                Thread.Sleep(1000);
                ((ITakesScreenshot)browser).GetScreenshot().SaveAsFile(store.ScreenShotFileName("Sears", user.Login),
                                                                       System.Drawing.Imaging.ImageFormat.Jpeg);
                browser.Manage().Cookies.DeleteAllCookies();
                browser.Quit();
            }
            catch (InvalidOperationException)
            {
                Store.ResultMessage("many");
                browser.Quit();
                Environment.Exit(0);
            }
            catch (NoSuchElementException e)
            {
                var result = MessageBox.Show("Something wrong: " + "\r\n" + e.Message,
                                             "Error",
                                             MessageBoxButton.OKCancel,
                                             MessageBoxImage.Error,
                                             MessageBoxResult.OK,
                                             MessageBoxOptions.ServiceNotification);

                switch (result)
                {
                case MessageBoxResult.OK:
                    sw.Close();
                    fs.Close();
                    Check(login, password, browser);
                    break;

                case MessageBoxResult.Cancel:
                    sw.WriteLine(DateTime.Now.ToString("dd.MM.yyyy HH:mm:ss") + "|" + login +
                                 "|" + password + "|exception|" + e.Message);
                    break;
                }
            }
            catch (WebDriverException)
            {
                Store.ResultMessage("many");
                browser.Quit();
                Environment.Exit(0);
            }
            finally
            {
                sw.Close();
                fs.Close();
            }
        }
Ejemplo n.º 29
0
        static void Main(string[] args)
        {
            List <string> Vals      = reader("C:\\Users\\User\\Downloads\\Telegram Desktop\\input_formatted.csv"); // список всех регистрационных номеров, очищенный
            List <string> ValsError = reader("C:\\Users\\User\\Downloads\\Telegram Desktop\\input_full.csv");      // список всех регистрационных номеров, неочищенный

            List <List <string> > output = new List <List <string> >();

            XmlDocument   MainDoc = new XmlDocument();
            XmlTextWriter Writer  = new XmlTextWriter("C:\\Users\\User\\Downloads\\Telegram Desktop\\output.xml", Encoding.UTF8);

            Writer.WriteStartDocument();
            Writer.WriteStartElement("head");
            Writer.WriteEndElement();
            Writer.Close();

            MainDoc.Load("C:\\Users\\User\\Downloads\\Telegram Desktop\\output.xml");


            string urlMain = "http://company.lursoft.lv/ru/"; // основная часть ссылки, к ней будут добавляться регистрационные номера

            Console.SetBufferSize(Console.BufferWidth, 1000); // а вот это для длины консоли

            List <int> statistics = new List <int>();

            IWebDriver DriverChrome = new OpenQA.Selenium.Chrome.ChromeDriver();

            for (int i = 0; i < Vals.Count; i++)
            {
                try
                {
                    string CurrentUrl = urlMain + Vals[i];
                    DriverChrome.Navigate().GoToUrl(CurrentUrl);
                    int statisticsCount = 0;

                    ReadOnlyCollection <IWebElement> ListTD = DriverChrome.FindElements(By.TagName("td"));

                    char empty = ' ';
                    if (ListTD.Count > 0 && ListTD[0].Text.Equals("Network Error (tcp_error)")) // вылетела ошибка TCP(сервер перегружен)
                    {
                        statisticsCount++;
                        i--;
                        continue;
                    }
                    else if (ListTD.Count == 0) // не найдено
                    {
                        statistics.Add(statisticsCount);
                        List <string> CurrentList = new List <string>();

                        CurrentList.Add((i + 1).ToString()); // RecordID
                        CurrentList.Add("-");                // Name
                        CurrentList.Add("-");                // OrgForm
                        CurrentList.Add(ValsError[i]);       // RegNum
                        CurrentList.Add("-");                // RegDate
                        CurrentList.Add("-");                // SEPA
                        CurrentList.Add("-");                // NDSNum
                        CurrentList.Add("-");                // IsActual
                        CurrentList.Add("-");                // Address
                        CurrentList.Add("-");                // RegisterNo
                        CurrentList.Add("-");                // RegisterDate
                        CurrentList.Add("-");                // LastUpdate
                        CurrentList.Add("-");                // Website
                        CurrentList.Add("-");                // Email
                        CurrentList.Add("-");                // Phone
                        CurrentList.Add("-");                // Fax
                        CurrentList.Add("false");            // IsFound

                        output.Add(CurrentList);
                    }
                    else // найдено
                    {
                        statistics.Add(statisticsCount);
                        string Name = "", OrgForm = "", RegNum = "", RegDate = "", Sepa = "", NDSNum = "",
                               IsActual = "", Address = "", RegisterNo = "", RegisterDate = "", LastUpdate = "", Website = "", Email = "", Phone = "", Fax = "", IsFound = "true";
                        Regex NDS = new Regex("LV\\d{8,15}");
                        Match match;

                        ReadOnlyCollection <IWebElement> ListImg = DriverChrome.FindElements(By.TagName("img"));
                        bool ImgFlag = false;

                        for (int j = 0; j < ListImg.Count; j++)
                        {
                            if (ListImg[j].GetAttribute("alt").ToString().Equals("Активный"))
                            {
                                IsActual = "true";
                                ImgFlag  = true;
                            }
                            else if (ListImg[j].GetAttribute("alt").ToString().Equals(" PVN_ne"))
                            {
                                IsActual = "false";
                                ImgFlag  = true;
                            }
                        }

                        if (ImgFlag == false)
                        {
                            IsActual = "-";
                        }
                        List <string> matches = new List <string>();
                        bool          regFlag = false;
                        for (int j = 0; j < ListTD.Count; j++)
                        {
                            match = NDS.Match(ListTD[j].Text);
                            matches.Add(match.Value.ToString());


                            switch (ListTD[j].Text)
                            {
                            case "Название":
                                string tmp5     = ListTD[++j].Text;
                                int    Position = tmp5.IndexOf('П');
                                if (Position == -1)
                                {
                                    Name = tmp5;
                                }
                                else
                                {
                                    Name = tmp5.Substring(0, Position);
                                }
                                Name = Name.Replace('\n', empty);
                                Name = Name.Replace('\r', empty);
                                break;

                            case "Данные из реестра плательщиков НДС":
                                string tmp4 = ListTD[++j].Text;
                                if (tmp4.Equals("Нет"))
                                {
                                    NDSNum   = "-";
                                    IsActual = "-";
                                }
                                break;

                            case "Правовая форма":
                                OrgForm = ListTD[++j].Text;
                                break;

                            case "Регистрационный номер, дата":
                                string[] tmp = ListTD[++j].Text.Split(',');
                                RegNum  = tmp[0];
                                RegDate = tmp[1].Substring(1, tmp[1].Length - 1);
                                break;

                            case "Идентификатор SEPA":
                                Sepa = ListTD[++j].Text;
                                break;

                            case "Юридический адрес":
                                string tmp2      = ListTD[++j].Text;
                                int    Position2 = tmp2.IndexOf('П');
                                if (Position2 == -1)
                                {
                                    Address = tmp2;
                                }
                                else
                                {
                                    Address = tmp2.Substring(0, Position2);
                                }
                                Address = Address.Replace('\n', empty);
                                Address = Address.Replace('\r', empty);
                                break;

                            case "Регистрационное удостоверение":
                                regFlag = true;
                                string[] tmp3 = ListTD[++j].Text.Split(' ');
                                RegisterNo   = tmp3[0] + " " + tmp3[1];
                                RegisterDate = tmp3[2];
                                break;

                            case "Последнее обновление в Регистре Предприятий":
                                LastUpdate = ListTD[++j].Text;
                                break;
                            }
                            if (!regFlag)
                            {
                                RegisterNo   = "-";
                                RegisterDate = "-";
                            }
                        }

                        for (int j = 0; j < matches.Count; j++)
                        {
                            if (!matches[j].Equals(""))
                            {
                                NDSNum = matches[j];
                                break;
                            }

                            if (j == matches.Count - 1)
                            {
                                NDSNum = "-";
                            }
                        }

                        DriverChrome.SwitchTo().Frame(0);

                        ReadOnlyCollection <IWebElement> ListPhones = DriverChrome.FindElements(By.ClassName("vizitka_contact_phone"));
                        IWebElement Web = DriverChrome.FindElement(By.ClassName("vizitka_contact_web"));



                        if (ListPhones[0].Text.IndexOf('+') == -1)
                        {
                            Phone = "-";
                        }
                        else
                        {
                            Phone = ListPhones[0].Text.Substring(ListPhones[0].Text.IndexOf('+'));
                        }

                        if (ListPhones[1].Text.IndexOf('+') == -1)
                        {
                            Fax = "-";
                        }
                        else
                        {
                            Fax = ListPhones[1].Text.Substring(ListPhones[1].Text.IndexOf('+'));
                        }


                        string[] Webs = Web.Text.Split('\n');

                        if (Webs[0].Equals("Добавь адрес сайта\r"))
                        {
                            Email = "-";
                        }
                        else
                        {
                            Email = Webs[0];
                            Email = Email.Replace('\n', empty);
                            Email = Email.Replace('\r', empty);
                        }

                        if (Webs[1].Equals("Добавь адрес эл. почты"))
                        {
                            Website = "-";
                        }
                        else
                        {
                            Website = Webs[1];
                        }

                        List <string> CurrentList = new List <string>();

                        CurrentList.Add((i + 1).ToString());    // RecordID
                        CurrentList.Add(Name);                  // Name
                        CurrentList.Add(OrgForm);               // OrgForm
                        CurrentList.Add(RegNum);                // RegNum
                        CurrentList.Add(RegDate);               // RegDate
                        CurrentList.Add(Sepa);                  // SEPA
                        CurrentList.Add(NDSNum);                // NDSNum
                        CurrentList.Add(IsActual);              // IsActual
                        CurrentList.Add(Address);               // Address
                        CurrentList.Add(RegisterNo);            // RegisterNo
                        CurrentList.Add(RegisterDate);          // RegisterDate
                        CurrentList.Add(LastUpdate);            // LastUpdate
                        CurrentList.Add(Website);               // Website
                        CurrentList.Add(Email);                 // Email
                        CurrentList.Add(Phone);                 // Phone
                        CurrentList.Add(Fax);                   // Fax
                        CurrentList.Add(IsFound);               // IsFound

                        output.Add(CurrentList);
                    }
                }
                catch
                {
                    i--;
                }
            }

            //Excel.Application ExcelApp;
            //ExcelApp = new Excel.Application();
            //ExcelApp.Visible = true;
            //ExcelApp.SheetsInNewWorkbook = 1;
            //ExcelApp.Workbooks.Add(Type.Missing);

            //Excel.Workbooks WorkBooks = ExcelApp.Workbooks;
            //Excel.Workbook Workbook = WorkBooks[1];
            //Excel.Sheets ExcelSheets = Workbook.Worksheets;
            //Excel.Worksheet CurrentSheet = (Excel.Worksheet)ExcelSheets.get_Item(1);

            //Excel.Range cell;
            //cell = CurrentSheet.get_Range("A1", Type.Missing);
            //cell = cell.get_Offset(1, 0);

            //for (int i = 0; i < output.Count; i++)
            //{
            //    for (int j = 0; j < output[i].Count; j++)
            //    {
            //        cell.Value2 = output[i][j];
            //        cell = cell.get_Offset(0, 1);
            //    }
            //    cell = cell.get_Offset(1, -17);
            //}

            XmlDocument   MainDoc2 = new XmlDocument();
            XmlTextWriter Writer2  = new XmlTextWriter("C:\\Users\\User\\Downloads\\Telegram Desktop\\output1.xml", Encoding.UTF8);

            Writer2.WriteStartDocument();
            Writer2.WriteStartElement("head");
            Writer2.WriteEndElement();
            Writer2.Close();

            MainDoc.Load("C:\\Users\\User\\Downloads\\Telegram Desktop\\output1.xml");

            for (int i = 0; i < output.Count; i++)
            {
                XmlNode Element = MainDoc2.CreateElement("BusinessPartner");
                MainDoc2.DocumentElement.AppendChild(Element);

                XmlNode RecordID = MainDoc2.CreateElement("RecordID");
                RecordID.InnerText = output[i][0];
                Element.AppendChild(RecordID);

                XmlNode Name = MainDoc2.CreateElement("Name");
                Name.InnerText = output[i][1];
                Element.AppendChild(Name);

                XmlNode OrgForm = MainDoc2.CreateElement("OrgForm");
                OrgForm.InnerText = output[i][2];
                Element.AppendChild(OrgForm);

                XmlNode RegNum = MainDoc2.CreateElement("RegNum");
                RegNum.InnerText = output[i][3];
                Element.AppendChild(RegNum);

                XmlNode RegDate = MainDoc2.CreateElement("RegDate");
                RegDate.InnerText = output[i][4];
                Element.AppendChild(RegDate);

                XmlNode Sepa = MainDoc2.CreateElement("Sepa");
                Sepa.InnerText = output[i][5];
                Element.AppendChild(Sepa);

                XmlNode NDSNum = MainDoc2.CreateElement("NDSNum");
                NDSNum.InnerText = output[i][6];
                Element.AppendChild(NDSNum);

                XmlNode IsActual = MainDoc2.CreateElement("IsActual");
                IsActual.InnerText = output[i][7];
                Element.AppendChild(IsActual);

                XmlNode Address = MainDoc2.CreateElement("Address");
                Address.InnerText = output[i][8];
                Element.AppendChild(Address);

                XmlNode RegisterNo = MainDoc2.CreateElement("RegisterNo");
                RegisterNo.InnerText = output[i][9];
                Element.AppendChild(RegisterNo);

                XmlNode RegisterDate = MainDoc2.CreateElement("RegisterDate");
                RegisterDate.InnerText = output[i][10];
                Element.AppendChild(RegisterDate);

                XmlNode LastUpdate = MainDoc2.CreateElement("LastUpdate");
                LastUpdate.InnerText = output[i][11];
                Element.AppendChild(LastUpdate);

                XmlNode Website = MainDoc2.CreateElement("Website");
                Website.InnerText = output[i][12];
                Element.AppendChild(Website);

                XmlNode Email = MainDoc2.CreateElement("Email");
                Email.InnerText = output[i][13];
                Element.AppendChild(Email);

                XmlNode Phone = MainDoc2.CreateElement("Phone");
                Phone.InnerText = output[i][14];
                Element.AppendChild(Phone);

                XmlNode Fax = MainDoc2.CreateElement("Fax");
                Fax.InnerText = output[i][15];
                Element.AppendChild(Fax);

                XmlNode IsFound = MainDoc2.CreateElement("IsFound");
                IsFound.InnerText = output[i][16];
                Element.AppendChild(IsFound);
            }

            MainDoc2.Save("C:\\Users\\User\\Downloads\\Telegram Desktop\\output.xml");
        }
Ejemplo n.º 30
0
        static void Main(string[] args)
        {
            IWebDriver Browser;

            Browser = new OpenQA.Selenium.Chrome.ChromeDriver();
            string pathQshSave = @"C:\Users\mmzhi\Downloads\qsh";

            if (Directory.Exists)
            {
                Console.WriteLine($"{pathQshSave} - не существует");
                Console.ReadKey();
            }

            string[] foldersQsh = Directory.GetDirectories(pathQshSave);

            for (int i = 0; i < foldersQsh.Length; i++)
            {
                try
                {
                    foldersQsh[i] = foldersQsh[i].Replace($"{pathQshSave}\\", string.Empty);
                }
                catch (Exception ex)
                {
                    Console.WriteLine(ex.Message);
                }
            }

            Browser.Navigate().GoToUrl("http://erinrv.qscalp.ru/");

            System.Threading.Thread.Sleep(2000);

            var xPath = By.XPath("/html/body/pre/a");

            ReadOnlyCollection <IWebElement> SearchDates = Browser.FindElements(xPath);

            List <DayUrl> DatesUrl = new List <DayUrl>();

            foreach (var date in SearchDates)
            {
                if (Array.IndexOf(foldersQsh, date.Text) < 0)
                {
                    DatesUrl.Add(new DayUrl("http://erinrv.qscalp.ru/" + date.Text, date.Text));
                }
            }

            foreach (var DateUrl in DatesUrl)
            {
                Browser.Navigate().GoToUrl(DateUrl.url);

                System.Threading.Thread.Sleep(2000);

                ReadOnlyCollection <IWebElement> equitys = Browser.FindElements(By.XPath(xPath));

                List <EquityURL> equitysURLs = new List <EquityURL>();

                for (int i = 1; i < equitys.Count; i++)
                {
                    equitysURLs.Add(new EquityURL($"{DateUrl.url}/{equitys[i].Text}", equitys[i].Text));
                }

                if (!Directory.Exists($"{pathQshSave}\\{DateUrl.day}"))
                {
                    Directory.CreateDirectory($"{pathQshSave}\\{DateUrl.day}");
                }

                foreach (var equityURL in equitysURLs)
                {
                    try
                    {
                        Browser.FindElement(By.LinkText(equityURL.nameFolder)).Click();

                        System.Threading.Thread.Sleep(1000);

                        File.Move($"{ pathQshSave.Replace("qsh", string.Empty)}{equityURL.nameFolder}", $"{pathQshSave}\\{DateUrl.day}\\{equityURL.nameFolder}");
                    }
                    catch (Exception exc)
                    {
                        Console.WriteLine(exc.Message);
                    }
                }
            }

            Console.ReadKey();
        }
Ejemplo n.º 31
0
 private ClientSideViewModel ClientSideCheck(string name, string email, string messageText)
 {
     var driversDir =
        new DirectoryInfo(AppDomain.CurrentDomain.BaseDirectory).Parent.Parent.Parent.GetDirectories()
           .First(d => d.Name == "Drivers");
     using (var driver = new OpenQA.Selenium.Chrome.ChromeDriver(driversDir.FullName))
     {
         driver.Url = BaseUrl + ContactResource;
         driver.Navigate();
         driver.FindElement(By.CssSelector(ContactNameInputSelector)).SendKeys(name);
         driver.FindElement(By.CssSelector(ContactEmailInputSelector)).SendKeys(email);
         driver.FindElement(By.CssSelector(ContactMessageBoxInputSelector))
             .SendKeys(messageText);
         bool emailRequiredVisible =
             driver.FindElement(By.CssSelector(ContactEmailRequiredValidationSelector)).GetCssValue("visibility") !=
             "hidden";
         bool emailInvalidVisible =
             driver.FindElement(By.CssSelector(ContactEmailInvalidValidationSelector)).GetCssValue("visibility") !=
             "hidden";
         bool nameRequiredVisible =
             driver.FindElement(By.CssSelector(ContactNameRequiredValidationSelector)).GetCssValue("visibility") !=
             "hidden";
         bool textRequiredVisible =
             driver.FindElement(By.CssSelector(ContactMessageBoxRequiredValidationSelector))
                 .GetCssValue("visibility") != "hidden";
         return new ClientSideViewModel
         {
             EmailInvalidInputVisible = emailInvalidVisible,
             EmailRequiredVisible = emailRequiredVisible,
             NameRequiredVisible = nameRequiredVisible,
             TextRequiredVisible = textRequiredVisible
         };
     }
 }
Ejemplo n.º 32
0
        static void Main(string[] args)
        {
            var driver = new OpenQA.Selenium.Chrome.ChromeDriver();

            driver.Navigate().GoToUrl("https://http.cat/200");
        }