selenium鼠标和键盘操作
1.键盘操作
键盘操作使用的是Keys类,一般配合send_keys使用
* 导入 from selenium.webdriver.common.keys import Keys
* 常用键盘操作
send_keys(Keys.BACK_SPACE) 删除键(BackSpace)
send_keys(Keys.SPACE) 空格键(Space)
send_keys(Keys.TAB) 制表键(Tab)
send_keys(Keys.ESCAPE) 回退键(Esc)
send_keys(Keys.ENTER) 回车键(Enter)
send_keys(Keys.CONTROL,‘a’) 全选(Ctrl+A)
*常用快捷键操作
send_keys(Keys.CONTROL,‘c’) 复制(Ctrl+C) send_keys(Keys.CONTROL,‘x’) 剪切(Ctrl+X) send_keys(Keys.CONTROL,‘v’) 粘贴(Ctrl+V) send_keys(Keys.F1) 键盘 F1 send_keys(Keys.F12) 键盘 F12
浏览器等待
显示等待
显示等待是根据条件进行等待,等待条件出现
实现: 导包 from selenium.webdriver.common.by import By from selenium.webdriver.support.ui import WebDriverWait from selenium.webdriver.support import expected_conditions as EC 代码 WebDriverWait(driver, timeout, poll_frequency=0.5, ignored_exceptions=None)
WebDriverWait类是由WebDirver 提供的等待方法。在设置时间内,
默认每隔一段时间检测一次当前页面元素是否存在,如果超过设置
时间检测不到则抛出异常。
WebDriverWait(driver,10,0.5).until(EC.presence_of_element_located((By.CLASS_NAME,"g-hu")))
隐式等待
隐式等待是根据是件进行等待,等待特定时间
driver.implicitly_wait(n)
n的单位为秒,n为最大值,在这个最大值内只要该界面上的全部元素都加载完成定就结束没有加载出元素就抛出 NosuchException.
优先 隐式等待 次之 显式等待 最次 固定等待