我正在尝试在输入单词后获取JQuery自动完成的HTML。为此,我决定尝试使用selenium webdriver。
我阅读了文档,我认为我有几个问题。
1)我没有找到搜索建议,虽然我很确定我正在选择它
2)我不知道如何将HTML从IWebElement转换为字符串。
这是我的代码不起作用:
IWebDriver driver = new FirefoxDriver();
driver.Navigate().GoToUrl("https://site.xxx/");
IWebElement query = driver.FindElement(By.Name("stext"));
query.SendKeys("iphone");
// Everything up to this point works, I put a wait in here just incase it takes a few seconds to load
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(2));
// This seems to come back empty but in developer tools for chrome I can see it
IWebElement results = driver.FindElement(By.ClassName("ac_results"));
谁能看到我哪里出错了?
答案 0 :(得分:0)
在你的结果调用上添加.text();结束以获取元素的文本值。 Java语法。
String val = driver.findElement(By.ClassName("ac_results")).text();
或者
WebElement we driver.findElement(By.ClassName("ac_results"));
String val = we.text();
答案 1 :(得分:0)
我试试javascriptexecutor,见下文:(C#版)
IWebDriver driver;
IJavaScriptExecutor jse = driver as IJavaScriptExecutor;
string body = (string)jse.ExecuteScript("return document.body");