c# - 无法点击链接
问题描述
这是我要点击第一医院“亚伯拉罕林肯纪念医院”的代码。无法单击下图中的第一个链接并引发异常第一次在搜索框中输入“ab”以搜索以 ab 开头的医院名称,然后打开第二个窗口以选择医院,我的代码在哪里不起作用
// Enter Hospital
element = driver.FindElement(By.XPath("//input[contains(@placeholder,'Search Hospitals...')]"));
element.SendKeys("ab");
System.Threading.Thread.Sleep(2000);
element.SendKeys(Keys.Enter);
System.Threading.Thread.Sleep(2000);
((IJavaScriptExecutor)driver). ExecuteScript("argument[0].click();", element);
System.Threading.Thread.Sleep(2000);
WebDriverWait wait = new WebDriverWait(driver, TimeSpan.FromSeconds(60));
Actions actions1 = new Actions(driver);
wait.Until(ExpectedConditions.ElementIsVisible(By.XPath("//a[contains(@title,'Abraham Lincoln Memorial Hospital')]"))).Click();
actions1.MoveToElement(driver.FindElement(By.XPath("//a[contains(@title,'Abraham Lincoln Memorial Hospital')]"))).Build().Perform();
//actions1.Perform();
// Actions actions2 = new Actions(driver);
// actions2.MoveToElement(driver.FindElement(By.LinkText("//a[contains(@title,'Abraham Lincoln Memorial Hospital')]"))).Click();
// element2 = driver.FindElement(By.XPath("//a[contains(@title,'Abraham Lincoln Memorial Hospital')]"));
//((IJavaScriptExecutor)driver).ExecuteScript("argument[0].click();", element2);
// element2.Click();
解决方案
指向 html 的链接会有所帮助,但您可以尝试以下操作xpath
:
//a[contains(text(),'Abraham Lincoln Memorial Hospital')]
推荐阅读
- javascript - 全局作用域如何在 javascript 中工作
- vba - 将标题复制到一些空白的行
- windows - Zookeeper 节点在系统重启后被删除
- python - 在python中评价多目标问题解决方案的拥挤距离
- r - CMD 运行 R 语句和 R 文件时出错
- javascript - 如何将json值过滤到数组
- chapel - 如何编译 PMI 支持以在 Omni-Path 网络上运行 Chapel/GASNet?
- python-3.x - 如何将 Dataframe 转换为给定格式的键值对
- ios - ObjectiveC 使用 XIB 单元格在 tableview 中使用并以编程方式将视图从左到右转换为阿拉伯语
- r - R中不同包的均值漂移聚类中的不同带宽规范