Selenium Webdriver 找不到表元素



我是硒的新手,我不知道如何从HTML页面中找到一些元素。我在这里复制了页面:

http://www.ladiana.it/test/test.htm

我需要点击这个按钮:选择并且在表格出现后,读取和写入它们的值:

我正在使用c#,我尝试了所有可能的方法,我还尝试列出Id为的所有元素:";targetDemandReductionMW";

IList IWebElement>all=driver2.FindElements(By.Id("targetDemandReductionMW"((;

我得到了一个52个无效元素的列表。

这里还有一些其他代码,它没有产生任何错误,但没有工作:

IWebElement element_xpath = driver2.FindElement(By.ClassName("tab_buttonSel"));
element_xpath.Click();
IWebElement table = driver2.FindElement(By.Id("drr1OfferAM"));


var rows = table.FindElements(By.TagName("tr"));


int conteggio = 0;
foreach (var row in rows)
{
var rowTds = row.FindElements(By.TagName("td"));
foreach (var td in rowTds)
{
IWebElement a = td.FindElement(By.XPath("//*[@id='targetDemandReductionMW']"));
Console.WriteLine(conteggio++.ToString()+" "+a.GetAttribute("href")+" "+ a.Text);


}
}

有什么帮助吗?感谢

对于需要单击的按钮,可以使用:

//div[@id='tabContainer']/div[2]/following::tr/td[text()='DRR1 Offer']

对于表记录的xpath,您可以使用:

//table[@id='drr1OfferPMHead']//td[@id='targetDemandReductionMW']

这将返回您正在查找的13行。然后,您可以对此执行FindElements并获取列表。

List<String> search = new List<string>();
IReadOnlyList<IWebElement> cells = driver.FindElements(By.Xpath("//table[@id='drr1OfferPMHead']//td[@id='targetDemandReductionMW']"));
foreach (IWebElement cell in cells)
{
search.Add(cell.Text);

}

单元格(在html中(有cellclick事件,但如果我尝试使用:

foreach (IWebElement cell in cells)
{
search.Add(cell.Text);
if (cell.Text=="300.0")
{
cell.click();   
}

}

它得出这样的错误:";OpenQA.Selenium.ElementNotInteractiableException:"元素不可交互";