在我们讲如何获取断言信息之前,普及一点断言的概念
什么是断言
断言是编程术语,表示为一些布尔表达,用来检查一个条件,如果它为真,就不做任何事。如果它为假抛出异常
那为什么要使用断言呢?
因为使用断言可以创建更稳定、品质更好且 不易于出错的代码。当需要在一个值为FALSE时中断当前操作的话,可以使用断言。 -摘自百度
比如说我们做selenium自动化,需要打开百度,那么如何去判断打开的这个百度页面是否为真呢?可以获取页面的标题,或者特定的文本等信息去断言是否为真
那我们如何获取这些信息?这就是今天要讲的内容。
获取断言信息的方法
我们通常可以通过获取title 、URL和text等信息进行断言
title:用于获得当前页面的标题
current_url:用户获得当前页面的
URL text:获取标签对之间的文本信息
对百度首页界面做一个运用演示。
代码如下:
from selenium import webdriver
import time
driver=webdriver.Chrome()
driver.get('http://www.baidu.com')
bai_t=driver.find_element_by_css_selector('a>div.title-text.c-font-medium.c-color-t')
now_url=driver.current_url #用户获当前页面的url
now_title=driver.title #用于获得当前页面的标题
baidurebang=bai_t.text #获取标签对之间的文本信息
time.sleep(2)
print(now_url)
print(now_title)
print(baidurebang)
driver.quit()
打印结果:
注意:
1、标签元素如果不展示在页面上,获取结果为空
2、标签对中间没有值,获取结果为空
3、如 input 标签之类的标签,获取结果为空
这里再介绍一种方法
get_attribute方法,获取元素某个属性的值
ele.get_attribute('href')
上述代码获取 ele 这个元素的 href 属性的值