selenium获取不了标签文本的解决方法
然而,都没有结果。
最后找到了一个博客:https://www.cnblogs.com/ppppying/p/7755064.html
给出了解决方法。
这个问题的本质是被隐藏了。
maxIn = browser.find_element_by_css_selector('#window > table:nth-of-type(2) > tbody > tr:nth-child(2) > td:nth-child(3)').get_attribute('innerHTML')#承诺到窗口最多次数说明
ye_or_no = browser.find_element_by_css_selector('#window > table:nth-of-type(2) > tbody > tr:nth-child(2) > td:nth-child(3)').is_displayed()#承诺到窗口最多次数说明
test_play = browser.find_element_by_css_selector('#window > table:nth-of-type(2) > tbody > tr:nth-child(2) > td:nth-child(3)').get_attribute('innerHTML')
print('是否被隐藏--------------------------------',ye_or_no)
print('显示文本内容--------------------------------',test_play)
用ss..is_displayed()查看是否被隐藏。如果返回False,就是这个值被隐藏了。
然后用ss.get_attribute('innerHTML')获得被隐藏的东西。
上述博客还给出了其他的三种解决方法:
print(ss.get_attribute("innerHTML")) # 用innerHTML 会返回元素的内部 HTML, 包含所有的HTML标签。
print(ss.get_attribute('textContent')) #用textContent 和 innerText 只会得到文本内容,而不会包含 HTML 标签。
print(ss.get_attribute('innerText')) # innerText 不是 W3C DOM 的指定内容,FireFox不支持
1,2种在selenium使用chrome的时候均能正常使用。
---------------------
作者:山水无间道
来源:CSDN
原文:https://blog.csdn.net/u010883226/article/details/86659380
版权声明:本文为博主原创文章,转载请附上博文链接!