我正在尝试使用生成的ID来查找元素,其中ID的某些部分是已知的;例如:
id="page_x002e_x0023_default-create-firstname"
其中后3个字词(_default-create-firstname)是已知的,但前面的任何内容都可能更改。这可能吗?
你可以申请一个 末端,与 CSS选择器:
By.cssSelector("[id$=default-create-firstname]")
更新资料
自从答案发布以来已经过去了一段时间。以下是链接的mozilla开发人员页面上的一些更新以及以下注释:
新用途By.css代替By.cssSelector
By.css("[id$=default-create-firstname]")
另请参阅以下四种可能性
/* Internal links, beginning with "#" */
a[href^="#"] {
background-color: gold;
}
/* Links with "example" anywhere in the URL */
a[href*="example"] {
background-color: silver;
}
/* Links with "insensitive" anywhere in the URL,
regardless of capitalization */
a[href*="insensitive" i] {
color: cyan;
}
/* Links that end in ".org" */
a[href$=".org"] {
color: red;
}
当我运行此代码时: 我收到以下错误: org.openqa.selenium.InvalidSelectorException:无法计算xpath表达式'//输入[包含(@id,'name']'要留档此错误,请访问:http://seleniumhq.org/exceptions/invalid_selector_exception.html构建信息:版本:'2.20.0',修订版:'16008'
问题内容: 如何从HashMap的位置检索元素,这有可能吗? 问题答案: HashMap不保留排序: 此类无法保证地图的顺序。特别是,它不能保证顺序会随着时间的推移保持恒定。 看一下LinkedHashMap,它保证了可预测的迭代顺序。
问题内容: 我正在使用 BeautifulSoup 。我必须找到对ID为的标签的引用,例如:。 例如: 我试过了: 我该如何过滤? 问题答案: 您可以传递函数findAll: 或正则表达式:
你知道为什么吗?
我是个新手,学习面向对象的Java。我有一个关于通过调用方法为多个数组添加元素的问题。我只是试图避免多次创建循环,对于多个数组,我想创建一个方法,它将包含必要的循环来添加元素(甚至将它们显示为输出),这样我就可以在需要的时候调用它。希望你明白我想说的话。请原谅我的英语不好。
我试图通过selenium单击save按钮,但是,我得到的错误是它无法定位元素。 这是网站的html部分 这是我得到的错误: NoSuchelementException:没有这样的元素:找不到元素:{“method”:“id”,“selector”:“divflashviewermain_savepdfbuttonicon”} (会话信息:chrome=74.0.3729.169)(驱动程序信息