我创建了一个项目,用于使用 Web Whatsapp 和 C# 代码中的 selenium 来自动化 Whatsapp 消息。它工作得很好,但每次加载新消息的 URL 时,如何停止重新加载页面并发送消息?
下面是我的代码,我有一个用于
loop
的所有号码,我正在为每个号码调用 SendMessage
方法。
private void SendMessage(string number, string message)
{
driver.Manage().Timeouts().ImplicitWait = TimeSpan.FromSeconds(10);
driver.Navigate().GoToUrl("https://api.whatsapp.com/send?phone=" + number + "&text=" + Uri.EscapeDataString(message));
driver.FindElement(By.Id("action-button")).Click();
driver.FindElement(By.CssSelector("button._2lkdt>span")).Click();
}
// Get search box
var SearchBox = WebDriver.FindElements(By.XPath("//*[@id='side']/div[1]/div/div/div[2]/div/div[1]/p")).SingleOrDefault();
if (SearchBox != null)
{
// Click and type the mobile number, then press the enter key
SearchBox.Click();
SearchBox.SendKeys("MobileNumber");
SearchBox.SendKeys(Keys.Enter);
// Get message box
var MessageBox = WebDriver.FindElements(By.XPath("//*[@id='main']/footer/div[1]/div/span[2]/div/div[2]/div[1]/div[2]/div[1]/p")).SingleOrDefault();
if (MessageBox != null)
{
// Type message to send, and click send button
MessageBox.SendKeys("TextMessage");
WebDriver.FindElement(By.XPath("//*[@id='main']/footer/div[1]/div/span[2]/div/div[2]/div[2]/button/span")).Click();
}
// Messag sent
}