selenium元素操作篇:元素的点击、文本输入及清除


前面我们学习过8种元素的定位,那么元素定位的目的肯定是需要对元素进行一系列的操作。

1、元素的点击:click()
当定位到元素后,会返回该元素的WebElement对象,该对象调用click()方法即可实现点击操作
示例:

driver = webdriver.Firefox()
# 打开百度
driver.get("https://www.baidu.com")
# 定位百度首页的新闻按钮
ele = driver.find_element(By.CSS_SELECTOR, "a.mnav[href='http://news.baidu.com']")
# 点击新闻按钮
ele.click()

示例中,打开百度首页,定位首页'新闻'按钮并执行点击操作。最后将打开新闻页面
所以元素的点击操作非常简单,只需定位到元素后调用click()方法即可。

问题:若元素是不可点击的该怎么办?或元素不可见时也可以调用click()进行元素点击操作吗?

 

2、元素的文本输入:send_keys(文本内容)
有时候,我们定位的元素是文本输入框,需要对其进行文本的输入,那么只需要用该元素调用send_keys()方法即可。
示例:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Firefox()
# 打开百度
driver.get("https://www.baidu.com")
# 定位百度首页的输入框
ele = driver.find_element(By.XPATH, "//input[@id='kw']")
# 输入文本'python'
ele.send_keys('python')

示例中,打开百度首页,定位搜索框,输入文本’python‘。


3、清除输入框中内容:clear()
有时候,由于产品的设计,输入框中可能会有默认的提示文字,如果我们直接在输入框中输入内容,则会在默认文字后增加,
从而导致文本内容与期望不符合。那么可用clear()方法先清除文本框中的内容,然后再输入我们想要的内容。
示例:

from selenium import webdriver
from selenium.webdriver.common.by import By

driver = webdriver.Firefox()
# 打开百度
driver.get("https://www.baidu.com")
# 定位百度首页的输入框
ele = driver.find_element(By.XPATH, "//input[@id='kw']")
# 输入文本'python'
ele.send_keys('python')
# 清除文本
ele.clear()

示例中,打开百度首页,定位搜索输入框并输入文本'python',然后调用clear()方法清除文本。


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM