元素的text、innerText 和 textContent 的区别
###
二、获取元素中的文本内容 1、通过get_attribute(‘textContent’)来获取元素的文本值 logoContext1 = driver.find_element_by_xpath('//div[@class="logo"]/span').get_attribute('textContent') 1 2、通过text来获取文本值 logoContext2 = driver.find_element_by_xpath('//div[@class="logo"]/span').text 1 3、通过执行JS操作来获取输入的文本值 logoContext3 = "return document.getElementsByTagName('span')[0].innerText" 1 打印出来的值 后台管理系统
######
二、元素的text、innerText 和 textContent 的区别 以下内容参考链接 https://juejin.im/post/5c0914c5f265da610e7fe372整理和修改 我们再看一段代码 1234 为了节约篇幅,我这里就不展示Python代码。此处Python代码和上文一致,仅将元素设置为"table_1"。 运行结果: 谷歌浏览器: 83.0.4103.116selenium版本号:3.141.0-------text---------1 24-------innerText---------1 24-------outerText---------1 24-------textContent---------1234-------innerHTML---------1234-------outerHTML---------- 1234 text、innerText和outerText 不能取到没有渲染在页面上的文本,也就是说隐藏的文本无法获取,textContent能获取所有的文本。 对于元素下面的子元素的文本获取(例如本文中table下面的span元素) ,text、innerText和textContent获取文本的格式不一样,个人感觉innerText最贴合浏览器显示。 innerText 会带来性能影响,由于 innerText 的值依赖渲染之后的结果,会受到 CSS 样式的影响,因此它会触发重排(reflow),所以使用它会有一定的性能影响;而 textContent 不会,因此更建议使用 textContent。 textContent 是 W3C 兼容的文字内容属性,但是 IE 不支持。innerText 不是 W3C DOM 的指定内容,FireFox不支持。谷歌浏览两者都支持。
######
技术改变命运