C#硒选择下拉值

时间:2018-10-08 14:52:54

标签: c# selenium

我已经搜索了多次,但仍然无法解决此问题。 从不同的站点尝试了很多方法,主要是使用SelectElement。 我需要选择“下拉列表”,然后将“值”选择为“公共”。

在我右键单击并检查下拉列表值后,下拉列表将立即关闭。

Dropdown image Dropdown inspect element

这是我现在拥有的代码:

~~~ login code =>
DriverChrome.Navigate().GoToUrl("https://steamcommunity.com/my/edit/settings");                
new SelectElement(DriverChrome.FindElement(By.CssSelector("div.ProfilePrivacyDropDown"))).SelectByText("Public");
Wait.Until(d => d.FindElement(By.XPath("/html/body/div[1]/div[7]/div[3]/div/div[2]/div/div[1]/div[3]/div/div[6]/div[1]/div"))).SendKeys("Public");
Wait.Until(d => d.FindElement(By.XPath("/html/body/div[1]/div[7]/div[3]/div/div[2]/div/div[1]/div[3]/div/div[6]/div[4]/div"))).SendKeys("Public");
Wait.Until(d => d.FindElement(By.XPath("/html/body/div[1]/div[7]/div[3]/div/div[2]/div/div[1]/div[3]/div/div[6]/div[7]/div"))).SendKeys("Public");
Wait.Until(d => d.FindElement(By.XPath("/html/body/div[1]/div[7]/div[3]/div/div[2]/div/div[1]/div[3]/div/div[6]/div[10]/div"))).SendKeys("Public");

1 个答案:

答案 0 :(得分:0)

如果仍然有问题,请尝试以下操作:

DriverChrome.Navigate().GoToUrl("https://steamcommunity.com/my/edit/settings"); 
DriverChrome.FindElement(By.CssSelector("div.ProfilePrivacyDropDown")).Click();

DriverChrome.FindElement(By.Xpath("//*[@class='popup_menu_item' and contains(text(),'Public')]")).Click();  

第一次单击后,您需要在其中添加一个wait元素。

我所做的是单击下拉菜单并在进行屏幕快照的同时选择了对元素的检查。

知道了: enter image description here

希望这会有所帮助。