python + selenium 获取标签文本的为空解决办法
一、确定元素是否被隐藏
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 获取标签文本的为空解决办法相关推荐
- Python selenium页面加载缓慢,超时解决办法
最近在编写selenium自动化测试框架,遇到一个烦人的问题, driver.get()不执行完,浏览器页面一直在转圈圈,下面的代码根本就不会执行,耗时一天的时间终于解决了. 原理:driver.ge ...
- java执行python返回null_[转]java调用python脚本以及通过Process.waitFor()直接调用python模块返回错误代码1的一种解决办法...
常见的java调用python脚本方式 通过jython提供的类库实现 通过Runtime.getRuntime()开启进程来执行脚本文件 通过jython提供的类库实现 通过jython实现的话,我 ...
- jsp中导入jsf标签库_初学jsf,自制的标签使用时报错?解决办法
当前位置:我的异常网» Java Web开发 » 初学jsf,自制的标签使用时报错?解决办法 初学jsf,自制的标签使用时报错?解决办法 www.myexceptions.net 网友分享于:201 ...
- mysql master status_show master status为空解决办法
show master status为空解决办法 kerwin 五月 29, 2014 默认yum安装了mysql,现在想调试一下主从,结果发现执行show master status为空. Welc ...
- win10系统适配器选项网络连接文件夹为空解决办法
描述: win10系统适配器选项网络连接文件夹为空解决办法 步骤: 点击左下角win图标->Windows系统->命令提示符->右键更多以管理员身份运行命令提示符 输入命令:nets ...
- Linux系统中,python需要import上一级目录文件的解决办法
Linux系统中,python需要import上一级目录文件的解决办法 在import前添加代码: import sys import os sys.path.append(os.path.abspa ...
- Python中当pip安装不成功的解决办法
Python中当pip安装不成功的解决办法 pip是Windows安装三方库最简单的方式,但是有的时候可能会不成功,以下是我个人的解决办法. 1.由于网络原因,外网的下载速度较慢,一直没进展,这种情况 ...
- 关于python 中h5py库安装不上的解决办法
关于python 中h5py库安装不上的解决办法 问题 解决步骤 1.先安装wheel这个库,方法就是从命令行中输入pip install wheel 2.下载自己对应的h5py的版本,网址如下 3. ...
- Python打包成exe,文件太大问题解决办法
Python打包成exe,文件太大问题解决办法 原因 解决办法 具体步骤 情况一:初次打包 情况二:再次打包 原因 由于使用pyinstaller打包.py文件时,会把很多已安装的无关库同时打包进去, ...
- python出现‘int‘ object is not iterable的解决办法
python出现'int' object is not iterable的解决办法 解决方法 解决方法 翻译:'int' object is not iterable的含义为:'int'对象不可迭代 ...
最新文章
- 微信小程序性能优化之一
- 使用开源CRM进行客户关系管理(2)
- HDU - 6629 string matching(扩展KMP)
- Shell入门(八)之布尔运算
- 前端:HTML/05/lt;meta标记,XHTML简介及其编写规范,表格标签(lt;table)及其相关标签(lt;tr,lt;td或lt;th)
- 【BZOJ4668】冷战 并查集
- MySQL Operators(比较操作符,逻辑运算符)
- dfs dtft dft fft
- 押注AI大装置,商汤的“月亮与六便士”
- English—句子
- 二元隐函数求二阶偏导_高数,隐函数求二阶偏导。f(x-y,yz)确定了z=(x,y),f具有二阶连续偏导数,求...
- 重要!SpringBoot一个非常蛋疼的无法启动的问题解决
- esrally 如何进行简单的自定义性能测试?
- 什么是超融合数据中心?超融合数据中心的价值是什么?
- 安装深度linux系统卡住不动,Linux安装系统卡住
- Avoid adding reactive properties to a Vue instance or its root $data at runtime - declare it upfront
- Google Earth Engine(GEE)实例代码学习十六——绘制经纬网(Pixel Lon Lat)
- Linux SDIO WIFI Marvell8801/Marvell88w8801(八) --- Marvell Linux Wi-Fi driver 对接芯片上行下行接口介绍
- Python高级教程(三)、数据库操作之mysql
- 雅思口语想考7分,到底该说英音还是美音