如何使用硒来抓取嵌套的链接文本
本文关键字:链接 文本 嵌套 抓取 何使用 | 更新日期: 2023-09-27 17:51:05
我在c#中使用Selenium来点击一个名为'Store Locator'的链接。我当前的代码如下,但没有点击链接:
IWebElement storeLink = driver.FindElement(By.LinkText("Store Locator"));
这是原始的HTML,注意有一个span元素嵌套在标签中,不确定这是否有区别。
<a href="/site/olspage.jsp?id=cat12090&type=page&rdct=n" data-lid="hdr_stl"><span class="header-icon-storeFinder" aria-hidden="true"></span>Store Locator</a>
链接好像被隐藏了。即使Selenium
找到了链接,它也不能直接交互。在这种情况下,JavaScript是你唯一的选择
By xpath = By.XPath("//span[contains(text(),'Store Locator')]");
IWebelement element = driver.FindElement(xpath);
((IJavaScriptExecutor)driver).ExecuteScript(@"arguments[0].click();",element);
这肯定可以。
IWebElement storeLink = driver.FindElement(By.LinkText("Store Locator"));
storeLink.click();