首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用Selenium抓取嵌套LinkText?

如何使用Selenium抓取嵌套LinkText?
EN

Stack Overflow用户
提问于 2015-05-30 01:30:58
回答 2查看 1.5K关注 0票数 0

我在C#中使用Selenium点击一个叫做“Store Locator”的链接。我当前的代码如下所示,但没有单击链接:

代码语言:javascript
复制
IWebElement storeLink = driver.FindElement(By.LinkText("Store Locator"));

这是原始的HTML,注意标签中嵌套了一个span元素,不确定这是否有区别。

代码语言:javascript
复制
<a href="/site/olspage.jsp?id=cat12090&amp;type=page&amp;rdct=n" data-lid="hdr_stl"><span class="header-icon-storeFinder" aria-hidden="true"></span>Store Locator</a>
EN

回答 2

Stack Overflow用户

发布于 2015-05-30 01:40:19

看起来链接是隐藏的。即使Selenium找到了链接,它也不能直接交互。在这种情况下,JavaScript是您唯一的选择

代码语言:javascript
复制
By xpath = By.XPath("//span[contains(text(),'Store Locator')]");
IWebelement element = driver.FindElement(xpath);
((IJavaScriptExecutor)driver).ExecuteScript(@"arguments[0].click();",element);
票数 1
EN

Stack Overflow用户

发布于 2015-07-07 00:28:24

这肯定会起作用。

代码语言:javascript
复制
IWebElement storeLink = driver.FindElement(By.LinkText("Store Locator"));
storeLink.click();
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/30535679

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档