Selenium C #: How to read all mail in Gmail and fetch the data from mail?

using OpenQA.Selenium;
using OpenQA.Selenium.Chrome;
using System;
using System.Collections.Generic;
using System.Linq;
using System.Threading;

namespace DemoAutomation
{
    class SampleProgram
    {
        public static IWebDriver driver;
      
        static void Main(string[] args)
        {
            try
            {
                driver = new ChromeDriver();
                Thread.Sleep(5000);
                driver.Manage().Window.Maximize();
                //LogIn Gmail
                driver.Navigate().GoToUrl("https://accounts.google.com/AccountChooser/identifier?service=mail&continue=https%3A%2F%2Fmail.google.com%2Fmail%2F&flowName=GlifWebSignIn&flowEntry=AddSession");
                Thread.Sleep(5000);
                IWebElement wb = driver.FindElement(By.Id("identifierId"));
                wb.SendKeys("abc@gmail.com");
                wb.SendKeys(Keys.Enter);
                Thread.Sleep(4000);
                IWebElement wb2 = driver.FindElement(By.Name("password"));
                wb2.SendKeys("pwd1234");
                wb2.SendKeys(Keys.Enter);
                Thread.Sleep(10000);

                //Search With Mail Id
                //IWebElement SEARCHBAR = driver.FindElement(By.Id("gbqfq"));
                //SEARCHBAR.SendKeys("mahesh.kuppani@scientificgames.com");
                //SEARCHBAR.SendKeys(Keys.Enter);
                //Thread.Sleep(8000);
                //IList<IWebElement> a = driver.FindElements(By.XPath("//*[@class='yP']"));



//Fetching all inbox mail and verifying with mail data by opening the mails when its matching with expected then it will come out.
                IList<IWebElement> a = driver.FindElements(By.XPath("//*[@class='zA yO']"));
              
                int emailsize = a.Count;
                for (int i = 0; i < emailsize;i++)
                {
                    try
                    {
                        IJavaScriptExecutor executor = (IJavaScriptExecutor)driver;
                        executor.ExecuteScript("arguments[0].click();", a.ElementAt(i));
                        Thread.Sleep(5000);
                        string EmailText = driver.FindElement(By.XPath("//div[@class='ii gt adP adO']/div/div[2]/p[1]")).Text;
                        Console.WriteLine("EmailText");
                        // searching for username
                        int pos = EmailText.IndexOf(":");
                        int pos1 = EmailText.IndexOf("Password:");
                        string CredentialUserValue = EmailText.Substring(pos + 1, (pos1 - pos) - 3);
                        CredentialUserValue = CredentialUserValue.Trim();
                        Thread.Sleep(2000);
                        if (CredentialUserValue.Equals("delete"))
                        {
                            Console.WriteLine("CredentialUserValue: " + CredentialUserValue);
                            int pos2 = EmailText.IndexOf(":", pos1);
                            int pos3 = EmailText.IndexOf("\n", pos2);
                            string CredentialPwdValue = EmailText.Substring(pos2 + 1, (pos3 - pos2) - 2);
                            CredentialPwdValue = CredentialPwdValue.Trim();
                            Console.WriteLine("CredentialUserValue: " + CredentialUserValue +"\nCredentialPwdValue: " + CredentialPwdValue);
                            driver.Navigate().GoToUrl("www.linkdin.com");
                            Thread.Sleep(5000);
                            driver.FindElement(By.Id("name")).SendKeys(CredentialUserValue);
                            Thread.Sleep(2000);
                            IWebElement wb3 = driver.FindElement(By.Id("password"));
                            wb3.SendKeys(CredentialPwdValue);
                            wb3.SendKeys(Keys.Enter);
                             break;
                            
                        }


                        // searching for password
                    }
                    catch (Exception ex)
                    {
                        Console.WriteLine("error " + ex);
                    }
                }
              
               
            }
           
            catch (Exception e)
            {
               
                Console.WriteLine("error " + e);
              
               

            }

Copyright © 2017 qatoolsguide.blogspot.com || ALL RIGHTS RESERVED