怎么回事满载一些元素是我想通过硒的webdriver做什么:C#硒的webdriver等待之前
- 转到https://www.for-sale.ie/adidas
- 点击过滤器
- 点击过滤完成后的第一个广告
它所做的是在过滤之前点击第一个广告(整个页面不会重新加载以进行过滤,只是广告列表)
var url = "https://www.for-sale.ie/adidas";
RemoteWebDriver _driver = new FirefoxDriver();
_driver.Manage().Window.Maximize();
_driver.Navigate().GoToUrl(url);
_driver.FindElement(By.CssSelector("#jsFilterItems_2 > ul > li:nth-child(2) > div > label > input")).Click();
System.Threading.Thread.Sleep(3000);
_driver.FindElement(By.CssSelector("article > .box_product_item.art-div > .listview > .middle > h2")).Click();
我发现使它工作的唯一方法是添加一个Thread.Sleep
这不是最好的解决方案。我也尝试管理超时但没有成功。任何建议?
您应该使用ExpectedConditions等待页面更新 - https://seleniumhq.github.io/selenium/docs/api/dotnet/html/T_OpenQA_Selenium_Support_UI_ExpectedConditions.htm – Grasshopper
太棒了!谢谢!我会解释我所做的感谢您的评论。 – Gun