/// <summary> /// looks for DOM objects to comment on google plus /// </summary> /// <param name="startSearch">DOM/</param> /// <param name="uName">name</param> /// <param name="uPass">pass</param> /// <param name="derValue">what value to log in based on bbotutility</param> internal static void Run(IWebDriver startSearch, string uName, string uPass, int derValue) { IWebDriver startDerSearch = BBotUtility.LogMeIn(startSearch, uName, uPass, derValue); IWebElement findMe; startDerSearch.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10.0)); findMe = startDerSearch.FindElement(By.XPath("//div[@class='pga']/div/div/div/div/div/div/div[@role='button']")); findMe.Click(); Thread.Sleep(2000); findMe = startDerSearch.FindElement(By.XPath("/html/body/div[2]/div[3]/div[2]/div[4]/div/div/div[2]/div/div[2]/div/div/div[2]/div/div[7]/div[2]/div[2]/div/div[2]/div[2]")); findMe.SendKeys(ChosenWord); Thread.Sleep(2000); // this works but after the first time your on google plus, its no longer needed //findMe = startSearch.FindElement(By.Id("sbdp")); // findMe.Click(); // findMe = startSearch.FindElement(By.PartialLinkText("Public")); // findMe.Click(); //Thread.Sleep(2000); //use xpath findMe = startDerSearch.FindElement(By.XPath("/html/body/div[2]/div[3]/div[2]/div[4]/div/div/div[2]/div/div[2]/div/div/div[2]/div[2]/table/tbody/tr/td/div")); findMe.Click(); }
/// <summary> /// looks for dom objects to comment on twitter /// </summary> /// <param name="startSearch">Dom</param> /// <param name="uName">name</param> /// <param name="uPass">pass</param> /// <param name="derValue">bbot utility value/login value</param> internal static void Run(OpenQA.Selenium.IWebDriver startSearch, string uName, string uPass, int derValue) { IWebDriver startDerSeach = BBotUtility.LogMeIn(startSearch, uName, uPass, derValue); IWebElement findDerEle; startDerSeach.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10.0)); findDerEle = startDerSeach.FindElement(By.XPath("//div[@id='tweet-box-mini-home-profile']")); findDerEle.Click(); findDerEle.SendKeys(TwitSpecial); System.Threading.Thread.Sleep(1000); findDerEle = startDerSeach.FindElement(By.XPath("//button[@class='btn primary-btn tweet-action js-tweet-btn']")); findDerEle.Click(); }
/// <summary> /// comments on linked in after loging in /// </summary> /// <param name="startSearch">iweb driver DOM/firefox</param> /// <param name="uName">name</param> /// <param name="uPass">password</param> /// <param name="derValue">to know what to run for logging into site</param> internal static void Run(IWebDriver startSearch, string uName, string uPass, int derValue) { IWebDriver searchStart = BBotUtility.LogMeIn(startSearch, uName, uPass, derValue); // IWebElement findme; startSearch.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(20.0)); findme = searchStart.FindElement(By.Name("postText")); findme.Click(); findme.SendKeys(ChosenWord); Thread.Sleep(1000);// change this to implicitly wait findme = searchStart.FindElement(By.Id("share-submit")); findme.Click(); }
//may need to change this method to generic /// <summary> /// searches DOM in order to comment /// </summary> /// <param name="startSearch">iweb driver that contains ff/DOM</param> /// <param name="uName">name</param> /// <param name="uPass">pass</param> /// <param name="derValue">value for switch/case to log in</param> internal static void Run(OpenQA.Selenium.IWebDriver startSearch, string uName, string uPass, int derValue) { IWebDriver startDerSearch = BBotUtility.LogMeIn(startSearch, uName, uPass, derValue); IWebElement findEle; startDerSearch.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(5.0)); System.Threading.Thread.Sleep(3000); // changed this to a config file since this may change startDerSearch.Navigate().GoToUrl("https://www.facebook.com/?sk=nf"); findEle = startDerSearch.FindElement(By.XPath("//textarea[@name='xhpc_message']")); startDerSearch.Manage().Timeouts().ImplicitlyWait(TimeSpan.FromSeconds(10.0)); findEle.Click(); findEle = startDerSearch.FindElement(By.XPath("//textarea[@name='xhpc_message_text']")); System.Threading.Thread.Sleep(2000); findEle.SendKeys(ChosenWord); findEle = startDerSearch.FindElement(By.XPath("//li/button[@type='submit']")); findEle.Click(); }
/// <summary> /// starts the automation of social media based on what the value is /// </summary> /// <param name="sender">the button</param> /// <param name="e">the event of button</param> private void runAutomation_btn_Click(object sender, RoutedEventArgs e) { IWebDriver startSearch; //start dll web driver from open QA startSearch = BBotUtility.StartBrowser(setURL); if (Dervalue != 5) { string uName = userName_txt.Text; string uPass = pass_txt.Text; BStartBot.RunApp(startSearch, uName, uPass, Dervalue); } else { //BBotChecker setValues = new BBotChecker(); BBotChecker.Passwords = new[] { password1.Text, password2.Text, password3.Text, password4.Text }; BBotChecker.Usernames = new[] { userName1.Text, userName2.Text, userName3.Text, userName4.Text }; BStartBot.RunAllSocialMediaSites(Dervalue, startSearch); } }