Python + Selenium WebDriver API之页面操作常用方法
在浏览器操作中,我们不是定位出元素之后就结束了,通常还需要执行一些后续操作,如输入文字 、单击打开新页面等等,在WebDriverAPI也为我们提供了执行这些操作对应的方法。下面就来看看WebDriver中一些常用的方法。
click()
单击元素。send_keys(vlaue)
模拟按键输入。clear()
清除文本。submit()
提交表单。size
返回元素的尺寸。text
获取元素的文本。get_attribute(name)
获得属性值。is_displayed()
设置该元素是否用户可见。
接下来,我们逐一举例说明:
— 1 —
import time
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('https://www.baidu.com/')
browser.find_element_by_id("kw").send_keys("python") # 模拟按键输入
browser.find_element_by_id("su").click() # 单击元素
time.sleep(2)
browser.find_element_by_id("kw").clear() # 清除文本
browser.find_element_by_id("kw").send_keys("Golang") # 模拟按键输入
browser.find_element_by_id("su").click() #单击元素
— 2 —
有些输入框没提供OK之类的提交按钮,但仍需要对输入的内容进行提交,这时就得使用submit()方法了,相当于使用了键盘上的回车键。
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('https://www.baidu.com/')
baidu = browser.find_element_by_id("kw")
baidu.send_keys("python")
baidu.submit() # 相当于直接按回车,来对输入的内容进行提交
— 3 —
from selenium import webdriver
browser = webdriver.Chrome()
browser.get('https://www.baidu.com/')
size = browser.find_element_by_id("kw").size
print(f'baidu InputSearch Size is {size}')
text = browser.find_element_by_id("cp").text
print(f'baidu ICP Info is {text}')
attribute = browser.find_element_by_id("kw").get_attribute("type")
print(attribute)
result = browser.find_element_by_id("kw").is_displayed()
print(result)
说明一下,is_displayed() 方法用于设置该元素是否用户可见。若可见,则返回True,否则返回False。