Selenium - 查找网页的所有元素
Posted
技术标签:
【中文标题】Selenium - 查找网页的所有元素【英文标题】:Selenium - Find all elements of a web page 【发布时间】:2013-11-10 01:43:09 【问题描述】:我正在计划一个 Java 工具,它有一个包含网页所有元素的下拉菜单。有什么办法可以将它们读入数据结构?
【问题讨论】:
嗨..你能开发上述工具吗?甚至计划开发相同的工具.. 需要您的意见.. 这仍然是一个 WIP,但我们正在取得进展。 你能解释一下开发过程的总结吗?? 这是一个用于开发脚本的摇摆 UI,它调用 javascript 来执行这些脚本。 【参考方案1】:是的,有办法。
这是一些伪代码:
List<WebElement> el = driver.findElements(By.cssSelector("*"));
for ( WebElement e : el )
add(e.tagName());
【讨论】:
谢谢。我确定在这种情况下我看不到 cssSelectors。例如,我尝试了 google.com,我得到了这些 - 图片 地图 播放 YouTube 新闻 Gmail 更多 登录 知道如何捕获自定义元素吗?已尝试使用execute-script document.all
但这似乎仍然只返回标准元素
这是否也会获取自定义元素(非默认但由用户创建的元素/标签,例如,上面的非伪 C# 版本:(虽然我只是在控制台中显示结果
IReadOnlyCollection<IWebElement> el = driver.FindElements(By.CssSelector("*"));
foreach (IWebElement elm in el)
Console.WriteLine(elm.TagName + elm.Text);
【讨论】:
以上是关于Selenium - 查找网页的所有元素的主要内容,如果未能解决你的问题,请参考以下文章
如何使用 Selenium xpath 查找包含“下载”一词的所有元素?
当元素不是按钮且在 Selenium 中不可定位时,如何查找在网页中单击了哪个元素? (HTML,硒)[关闭]