如何使用selenium通过属性查找元素?

Yan*_*ong 4 python selenium xpath

我想从以下 html 行中选择文本:

<h3 data-reacid ='64'> text to select <h3>
Run Code Online (Sandbox Code Playgroud)

我尝试使用xpath。但由于某种原因,selenium无法通过xpath找到这个元素。我想通过“data-reactid”属性选择文本。我不知道该怎么做。我正在将 selenium 与 python 一起使用。

ale*_*cxe 8

假设64是一个稳定值,并且对于该特定元素不会改变,并且属性名称是data-reactid(而不是data-reacid- 看起来像拼写错误):

driver.find_element_by_xpath("//h3[@data-reactid = '64']").text
Run Code Online (Sandbox Code Playgroud)

基于等效 CSS 选择器的解决方案:

driver.find_element_by_css_selector("h3[data-reactid=64]").text
Run Code Online (Sandbox Code Playgroud)

当然,您需要考虑可能的计时问题和其他情况,例如元素位于 iframe 内。这是针对您的具体情况而定的。