一、确定元素是否被隐藏

link = driver.find_element(*By_xx, 'value').is_displayed()
print(link)

如果输出结果为False,说明元素被隐藏了。

二、解决方法

1、修改当前定位元素方式方法(修改定位元素方式,或者修改定位元素的路径等),使用is_displayed()方法定位元素结果为True。

  由于webdriver spec的定义,selenium WebDriver只会与课件元素交互,所以获取隐藏元素的文本信息返回为空字符串。

2、通过get_attribute()方法获取元素的文本信息。

  在获取隐藏元素的文本信息时,可以使用get_attribute()方法,通过textContent、innerText、innerHTML等属性获取。

  innerHTML会返回元素内部的HTML,包含所有的HTML标签。

  textContent和innerText置灰得到文本内容,而不会包含HTML标签。textContent是W3C兼容的文字内容属性,但是IE不支持;innerText不是W3C DOM的指定内容,但是FireFox不支持。

from selenium.webdriver.common.by import By
from test_case.common.home import Pageclass CloudMainPage(Page):username_input = (By.ID, 'username')password_input = (By.ID, 'password')loging_button = (By.XPATH, '//*[@id="loginDiv"]/div[1]/div[1]/ul/li[4]/div[1]')loging_result = (By.XPATH, '//*[@id="tuichuxitong"]/span')def user_login(self, username, password):"""用户登录:param username: 用户名:param password: 密码:return:"""self.find_element(*self.username_input).clear()self.find_element(*self.username_input).send_keys(username)self.find_element(*self.password_input).clear()self.find_element(*self.password_input).send_keys(password)self.find_element(*self.loging_button).click()def login_result(self):return self.find_element(*self.loging_result).get_attribute('innerText')

转载于:https://www.cnblogs.com/chen/p/10931424.html

python + selenium 获取标签文本的为空解决办法相关推荐

  1. Python selenium页面加载缓慢,超时解决办法

    最近在编写selenium自动化测试框架,遇到一个烦人的问题, driver.get()不执行完,浏览器页面一直在转圈圈,下面的代码根本就不会执行,耗时一天的时间终于解决了. 原理:driver.ge ...

  2. java执行python返回null_[转]java调用python脚本以及通过Process.waitFor()直接调用python模块返回错误代码1的一种解决办法...

    常见的java调用python脚本方式 通过jython提供的类库实现 通过Runtime.getRuntime()开启进程来执行脚本文件 通过jython提供的类库实现 通过jython实现的话,我 ...

  3. jsp中导入jsf标签库_初学jsf,自制的标签使用时报错?解决办法

    当前位置:我的异常网» Java Web开发 » 初学jsf,自制的标签使用时报错?解决办法 初学jsf,自制的标签使用时报错?解决办法 www.myexceptions.net  网友分享于:201 ...

  4. mysql master status_show master status为空解决办法

    show master status为空解决办法 kerwin 五月 29, 2014 默认yum安装了mysql,现在想调试一下主从,结果发现执行show master status为空. Welc ...

  5. win10系统适配器选项网络连接文件夹为空解决办法

    描述: win10系统适配器选项网络连接文件夹为空解决办法 步骤: 点击左下角win图标->Windows系统->命令提示符->右键更多以管理员身份运行命令提示符 输入命令:nets ...

  6. Linux系统中,python需要import上一级目录文件的解决办法

    Linux系统中,python需要import上一级目录文件的解决办法 在import前添加代码: import sys import os sys.path.append(os.path.abspa ...

  7. Python中当pip安装不成功的解决办法

    Python中当pip安装不成功的解决办法 pip是Windows安装三方库最简单的方式,但是有的时候可能会不成功,以下是我个人的解决办法. 1.由于网络原因,外网的下载速度较慢,一直没进展,这种情况 ...

  8. 关于python 中h5py库安装不上的解决办法

    关于python 中h5py库安装不上的解决办法 问题 解决步骤 1.先安装wheel这个库,方法就是从命令行中输入pip install wheel 2.下载自己对应的h5py的版本,网址如下 3. ...

  9. Python打包成exe,文件太大问题解决办法

    Python打包成exe,文件太大问题解决办法 原因 解决办法 具体步骤 情况一:初次打包 情况二:再次打包 原因 由于使用pyinstaller打包.py文件时,会把很多已安装的无关库同时打包进去, ...

  10. python出现‘int‘ object is not iterable的解决办法

    python出现'int' object is not iterable的解决办法 解决方法 解决方法 翻译:'int' object is not iterable的含义为:'int'对象不可迭代 ...

最新文章

  1. 微信小程序性能优化之一
  2. 使用开源CRM进行客户关系管理(2)
  3. HDU - 6629 string matching(扩展KMP)
  4. Shell入门(八)之布尔运算
  5. 前端:HTML/05/lt;meta标记,XHTML简介及其编写规范,表格标签(lt;table)及其相关标签(lt;tr,lt;td或lt;th)
  6. 【BZOJ4668】冷战 并查集
  7. MySQL Operators(比较操作符,逻辑运算符)
  8. dfs dtft dft fft
  9. 押注AI大装置,商汤的“月亮与六便士”
  10. English—句子
  11. 二元隐函数求二阶偏导_高数,隐函数求二阶偏导。f(x-y,yz)确定了z=(x,y),f具有二阶连续偏导数,求...
  12. 重要!SpringBoot一个非常蛋疼的无法启动的问题解决
  13. esrally 如何进行简单的自定义性能测试?
  14. 什么是超融合数据中心?超融合数据中心的价值是什么?
  15. 安装深度linux系统卡住不动,Linux安装系统卡住
  16. Avoid adding reactive properties to a Vue instance or its root $data at runtime - declare it upfront
  17. Google Earth Engine(GEE)实例代码学习十六——绘制经纬网(Pixel Lon Lat)
  18. Linux SDIO WIFI Marvell8801/Marvell88w8801(八) --- Marvell Linux Wi-Fi driver 对接芯片上行下行接口介绍
  19. Python高级教程(三)、数据库操作之mysql
  20. 雅思口语想考7分,到底该说英音还是美音

热门文章

  1. hdu 1231最大连续子序列 动态规划
  2. inDesign文字教程,如何制作复古文本效果?
  3. 苹果mac窗口速调辅助工具:Magnet
  4. 在 Mac 上如何使用 iCloud 钥匙串保护信息安全?
  5. iOS开发之UILabel的使用
  6. 如何在 Mac 上将 WebP 图像批量转换为 JPG?
  7. JAVA程序员面试32问(价值8k)你认同吗?
  8. MyBatis 动态SQL与SQL片段
  9. IOS学习之UITableView滚动到指定位置
  10. ReentrantReadWriteLock 可重入的读写锁