for position in driver.find_elements_by_xpath("//div[@class='d3-tip n']"):
style = position.get_attribute('style')
opacity = style[:32]
if opacity == "position: absolute; opacity: 1;":
tooltipmessage = driver.find_element_by_xpath('//div[contains(@style,"%s")]' % opacity)
time.sleep(3)
print tooltipmessage.text
我有2个具有相同类的div标签(" d3-tip n")。当我悬停鼠标时,不透明度变为" 1"在style属性中,我想打印div标签中的文本。
我编写了以下代码,由于某种原因,它不会打印任何内容。
注意 - 我也尝试过position.text,但也没有。
附加的是HTML代码,它显示具有相同类的2个div项目,带有SQL查询的项目是我要打印的文本。
for position in driver.find_elements_by_xpath('//div[@class="d3-tip n"]'):
style = position.get_attribute('style')
opacity = style[:32]
if opacity == "position: absolute; opacity: 1;":
print position
答案 0 :(得分:2)
您可以从类名找到的第2个div
中找到第一个element = driver.find_elements_by_xpath('//div[@class="d3-tip n"]')[0]
print element.text
:
div
另一个选择是检查element = driver.find_element_by_xpath('//div[@class="d3-tip n"][count(*)=0]')
print element.text
标记中是否有子项:
select
另一个选项是检查div
文字中是否有element = driver.find_element_by_xpath('//div[@class="d3-tip n"][contains(text(), "select")]')
print element.text
个文字:
{{1}}