所以我试着点击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();
答案 0 :(得分:2)
根据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);
}