簡體   English   中英

Selenium Webdriver 找不到表格元素

[英]Selenium Webdriver can't find table elements

我是硒的新手,我不知道如何從 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.ElementNotInteractableException:'元素不可交互”

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM