property 和 attribute非常容易混淆,两个单词的中文翻译也都非常相近(property:属性,attribute:特性),但实际上,二者是不同的东西,属于不同的范畴。
- property是DOM中的属性,是JavaScript里的对象;
- attribute是HTML标签上的特性,它的值只能够是字符串;
我们通过实例来看下这3个有什么区别?
1、要取百度首页,链接“地图”这个文字怎么取?
2、在百度输入框中输入文字,要取输入框中的这个文字怎么取?
3、要取百度输入框的某个属性值,比如id、name怎么取?
4、实例
from selenium import webdriver driver = webdriver.Chrome() driver.get('http://www.baidu.com') ele = driver.find_element_by_id('kw') ele.send_keys('storm啊') ele1 = driver.find_element_by_link_text("地图") print(ele1.text) print(ele.get_attribute("value")) print(ele.get_property('id')) driver.quit()
5、总结
(1)简单说,get_property 就是取元素属性的,该元素有id,有name,就可以通过该方法取;
(2)get_attribute("value"),就是去文本框中输入的内容。(还有其它用法,本人不会,哈哈,可以留言告知,谢谢);
(3).text 属性,就是元素本身的文字显示。