我有一个在上面写文字的按钮。按钮上的文本来自数据库,并且会定期更改。我想将此文本保存在变量中以进行进一步处理。 html标签在下面给出
<button type="button" id="hvac1_sequence" class="btn btn-warning" style="width:60px;">Lag</button>
我想使用C#通过Selenium Webdriver在变量中保存“滞后”。我已经尝试了以下以下代码,但是由于遇到错误,它们都不起作用。
var element = driver.FindElement(By.Id("hvac1_sequence")).Text
var element = driver.FindElement(By.ClassName("btn btn-warning")).Text
var element = driver.FindElement(By.XPath("//button[@id='hvac1_sequence']")).Text
我也试图将它们保存在IWebElement中,而不是var中。还是一样的错误。谁能帮我吗?
编辑1:错误是Selenium无法找到ID或Selenium无法找到给定的Xpath之类的东西
编辑2:完全错误
An unhandled exception of type 'OpenQA.Selenium.NoSuchElementException' occurred in WebDriver.dll. Additional information: no such element: Unable to locate element: {"method":"id","selector":"hvac1_sequence"}
答案 0 :(得分:0)
发生错误,因为未选择框架。我使用以下方法选择框架
driver.SwitchTo().Frame("temporary");
其中临时地址是iframe的ID