NEWS

[C#] Selemium Tự động đăng nhập gmail bằng Chrome Driver

[C#] Selemium Tự động đăng nhập gmail bằng Chrome Driver
Đăng bởi: Thảo Meo - Lượt xem: 21898 12:42:20, 10/05/2018DEVEXPRESS   In bài viết

Hi! Chào các bạn, bài viết hôm nay, mình sẽ tiếp tục hướng dẫn các bạn sử dụng Selenium để tự động đăng nhập vào Gmail bằng lập trình C#.

Vậy Selenium  là gì?

Selenium là một trong những công cụ kiểm thử phần mềm tự động mã nguồn mở (open source test automation tool) mạnh mẽ nhất hiện nay cho việc kiểm thử ứng dụng Web. Selenium script có thể chạy được trên hầu hết các trình duyệt như IE, Mozilla FireFox, Chrome, Safari, Opera; và hầu hết các hệ điều hành như Windows, Mac, Linux.

Sử dụng selemium c#

Source code C#:

try
{
    //get row handle

    var driverService = ChromeDriverService.CreateDefaultService();
    driverService.HideCommandPromptWindow = true;
    ChromeOptions options = new ChromeOptions();
    options.AddArguments("--incognito");
    options.AddArgument(@"--start-maximized");

    var driver = new ChromeDriver(driverService, options);


    driver.Navigate().GoToUrl("https://accounts.google.com/signin/v2/identifier?uilel=3&hl=en&passive=true&service=youtube&continue=https%3A%2F%2Fwww.youtube.com%2Fsignin%3Fhl%3Den%26next%3D%252F%26action_handle_signin%3Dtrue%26app%3Ddesktop&flowName=GlifWebSignIn&flowEntry=ServiceLogin");
    //driver.Manage().Window.Minimize();
    IWebElement query = driver.FindElement(By.CssSelector("input[type='email']"));
    query.SendKeys(email);
    query = driver.FindElement(By.CssSelector("div#identifierNext"));
    query.Click();
    driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(5);
    query = driver.FindElement(By.CssSelector("input[name='password']"));
    query.SendKeys(password);
    driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10);
    Thread.Sleep(500);

    query = driver.FindElement(By.XPath(".//*[@id='passwordNext']//content//span"));
    query.Click();
    Thread.Sleep(1000);
    try
    {
        string a = driver.FindElement(By.CssSelector("h1#headingText")).Text;
        if (a.Contains("Verify it's you"))
        {
            MessageBox.Show("Verify it's you");
            Thread.Sleep(int.Parse(txt_verify.Text) * 1000);
        }
    }
    catch (Exception)
    {

    }

    Thread.Sleep(6000);



    driver.Navigate().GoToUrl(video);
    //driver.Manage().Window.Maximize();        subscribe-button     
    Thread.Sleep(500);
    //driver.Manage().Window.Maximize();

    // ((IJavaScriptExecutor)driver).ExecuteScript("arguments[0].scrollIntoView(true);", query);
    ((IJavaScriptExecutor)driver).ExecuteScript("window.scrollBy(0, 150)");
    //Thread.Sleep(100);
    //query = driver.FindElement(By.XPath("//*[@id=button]"));
    //query.Click();

    //Thread.Sleep(1000); Verify it's you
    //query = driver.FindElement(By.Id("placeholder-area"));
    //query.Click();
    Thread.Sleep(timer * 1000);

    driver.Quit();
    int row = findIndexByValue(email);
    SetRowColorGridView(row);
}
catch (Exception)
{

}

HAVE FUN :)

THÔNG TIN TÁC GIẢ

BÀI VIẾT LIÊN QUAN

[C#] Selemium Tự động đăng nhập gmail bằng Chrome Driver
Đăng bởi: Thảo Meo - Lượt xem: 21898 12:42:20, 10/05/2018DEVEXPRESS   In bài viết

CÁC BÀI CÙNG CHỦ ĐỀ

Đọc tiếp
.