选择元素
根据元素id属性,class属性,tag名选择元素
Web自动化的难点和重点之一,就是如何选择我们想要操作的web页面元素。除了根据元素id,还可以根据元素
的class属性选择元素
通过WebElement对象选择元素
不仅WebDriver对象有选择元素的方法,WebElement对象也有选择元素的方法,WebElement对象也可以调用
find_element_by_xxx , find_elements_by_xxx之类的方法。
WebDriver对象选择元素的范围是整个web页面,而WebElement对象选择元素的范围是该元素的内部。
操控元素
获取整个元素对应的HTML
要获取整个元素对应的HTML文本内容,可以使用element.get_attribute(‘outerHTML‘)
如果,只是想获取某个元素内部的HTML文本内容,可以使用element.get_attribute(‘innerHTML‘)
获取输入框里面的文字
对于input输入框的元素,要获取里面的输入文本,用text属性是不行的,这时可以使用element.get_attribute(‘value‘)
获取元素文本内容2
通过WebElement对象的text属性,可以获取元素(展示在界面上的)文本内容。但是,有时候,元素的文本内容没有展示在界面上,
或者没有完全展示在界面上,这时用WebElement的text属性,获取文本内容,就会有问题,出现这种情况,可以尝试使用
element.get_attribute(‘innerHTML‘)或element.get_attribute(‘textContent‘)
from time import sleep
from selenium import webdriver
wd=webdriver.Chrome(r‘C:\Users\Administrator\AppData\Local\Programs\Python\Python37\chromedriver.exe‘) #chrome驱动存放的具体路径
wd.implicitly_wait(5)
wd.get(r‘https://www.baidu.com/‘)
wd.maximize_window()
# 根据id选择元素,返回的就是该元素对应的webElement对象
# 通过该WebElement对象,就可以对页面元素进行操作
# 比如输入字符串到这个输入框 用send_keys()
wd.find_element_by_id("kw").send_keys("小猿_vv博客园")
wd.find_element_by_id("su").click()
element = wd.find_element_by_id(‘1‘)
print(element.get_attribute(‘outerHTML‘))
原文:https://www.cnblogs.com/yuan213/p/12833598.html