🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
[TOC] ## **4.3 WebDriver 中的常用方法** 前面我们学习了定位元素的方法,但定位只是第一步,定位之后还需要对这个元素进行操作,比如,单击(按钮)或输入(输入框)。下面就来认识 WebDriver 中常用的几个方法。 (1)clear():清除文本。 (2)send_keys(value):模拟按键输入。 (3)click():单击元素。 ``` from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.baidu.com") driver.find_element_by_id("kw").clear() driver.find_element_by_id("kw").send_keys("selenium") driver.find_element_by_id("su").click() driver.quit() ``` (4)submit():提交表单。 例如,有些搜索框不提供搜索按钮,而是通过按键盘上的回车键完成搜索内容的提交,这时可以通过 submit()模拟。 ``` from selenium import webdriver driver = webdriver.Chrome() driver.get("https://www.baidu.com") search_text = driver.find_element_by_id('kw') search_text.send_keys('selenium') search.submit() driver.quit() ``` 有时候submit()可以与click()互换使用,但submit()的应用范围远不及click()广泛。click()可以单击任何可单击的元素,例如,按钮、复选框、单选框、下拉框文字链接和图片链接等。 (5)size:返回元素的尺寸。 (6)text:获取元素的文本。 (7)get_attribute(name):获得属性值。 (8)is_displayed():设置该元素是否用户可见。 ``` from selenium import webdriver driver = webdriver.Chrome() driver.get("http://www.baidu.com") # 获得输入框的尺寸 size = driver.find_element_by_id('kw').size print(size) # 返回百度页面底部备案信息 text = driver.find_element_by_id("bottom_layer").text print(text) # 返回元素的属性值,可以是 id、name、type 或其他任意属性 attribute = driver.find_element_by_id("kw").get_attribute('type') print(attribute) # 返回元素的结果是否可见,返回结果为 True 或 False result = driver.find_element_by_id("kw").is_displayed() print(result) driver.quit() ``` 运行结果如下: ``` {'height': 44, 'width': 548} 关于百度About Baidu使用百度前必读帮助中心京公网安备11000002000001号京ICP证030173号©2021 Baidu 互联网药品信息服务资格证书 (京)-经营性-2017-0020信息网络传播视听节目许可证 0110516 text True ``` 执行上面的程序并查看结果:size 方法用于获取百度输入框的宽、高;text 方法用于获得百度底部的备案信息;get_attribute()方法用于获得百度输入的 type 属性的值;is_displayed()方法用于返回一个元素是否可见,如果可见,则返回 True,否则返回 False。