因此,我尝试单击YouTube上的一个按钮,但是由于按钮太多,因此无法通过Xpath找到该按钮,因此我尝试将它们保存在IList中,现在我想单击列表中的特定按钮。
ChromeDriver chrome = new ChromeDriver(); List<IWebElement> textfields = new List<IWebElement>(); chrome.Navigate().GoToUrl("https://www.youtube.com/watch?v=9bZkp7q19f0"); textfields = chrome.FindElements(By.XPath("//*[@id=\"button"]")).ToList();
根据的文档将返回类型。因此,您可以像这样简化代码: Selenium FindElements(By.XPath("//*[@id=\"button"]")) List ReadOnlyCollection<IWebElement>
Selenium
FindElements(By.XPath("//*[@id=\"button"]"))
List
ReadOnlyCollection<IWebElement>
ChromeDriver chrome = new ChromeDriver(); List<IWebElement> textfields = new List<IWebElement>(); chrome.Navigate().GoToUrl("https://www.youtube.com/watch?v=9bZkp7q19f0"); textfields = chrome.FindElements(By.XPath("//*[@id='button']")); foreach (IWebElement field in textfields) { string my_text = field.GetAttribute("any_attribute_button_tag"); Console.WriteLine(my_text); }