c# - Selenium Chrome 驱动程序在页面上查找文本
问题描述
我想在 Selenium Chrome 驱动程序中加载一个网页,并在加载的 HTML 页面上搜索一些文本。我想以编程方式检查是否找到了搜索文本。我找到了一种在源代码中搜索的方法,但找不到在 HTML 页面上搜索的方法。XPath 搜索不起作用,因为我想将解决方案用于不同的 HTML 页面。有人可以建议如何做到这一点吗?我正在使用 Csharp 语言。
解决方案
我认为你可以用 Xpath 做到这一点。以下将返回页面上带有文本的任何元素的数组"text you want to search"
driver.FindElements((By.XPATH, '//*[text() = "text you want to search"]'));
或者,以下将抓取包含的 "my text"
任何元素:
driver.FindElements((By.XPATH, '//*[text()[contains(.,'my text')]]'));
然后,您可以找到该数组的长度,或专门与元素交互。只要您只是在搜索该文本,我认为这应该适用于任何网页。
推荐阅读
- java - JobLauncherTestUtils 预计至少有 1 个符合自动装配候选资格的 bean
- r - 将新数据附加到 R 中的 sqlite db
- python-3.x - Tkinter 中的多处理
- c# - Datagridrow 动画无法正常工作
- javascript - 转移价值
- python - 使用 Keras 微调 ResNet50 - val_loss 不断增加
- javascript - 你可以在 JS 中使用 w3-include-html 吗?
- c - 如何将 argb 像素阵列变成 SDL 表面?
- sql - 仅在第一次计数时更新
- java - Android / Java - 通过反射获取隐藏类的类型