赞
踩
前言
在前面几篇中重点介绍了一些元素的定位方法,定位元素后,接下来就是操作元素了。下面讲解操作元素(键盘和鼠标事件)
一、简单操作
1.点击(鼠标左键)页面按钮:click()
2.清空输入框:clear()
3.输入字符串:send_keys()
4.打开百度后,一般为了保证输入的正确性,可以先清空输入框,然后输入搜索关键字
# coding:utf-8
from selenium import webdriver
import time
driver=webdriver.Chrome()
driver.get("https://www.baidu.com")
driver.find_element_by_id("su").click()
driver.find_element_by_name("wd").clear()
driver.find_element_by_name("wd").send_keys("xixi")
driver.find_element_by_id("su").submit() #也可以使用.click()
二、submit提交表单
1.在前面百度搜索案例中,输入关键字后,可以直接按回车键搜索,也可以点搜索按钮搜索
2.submit()一般用于模拟回车键
三、键盘操作
1.selenium提供了一整套的模拟键盘操作事件
2.模拟键盘的操作需要先导入键盘模块:from selenium.webdriver.common.keys import Keys
3.模拟enter键,可以用send_keys(Keys.ENTER)
# coding:utf-8
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
import time
driver=webdriver.Chrome()
driver.get("https://www.baidu.com")
driver.find_element_by_id("su").click()
driver.find_element_by_name("wd").clear()
driver.find_element_by_name("wd").send_keys("xixi")
#模拟enter键操作回车按钮
driver.find_element_by_id("su").send_keys(Keys.ENTER)
4.其它常见的键盘操作:
键盘F1到F12:send_keys(Keys.F1) 把F1改成对应的快捷键
复制Ctrl+C:send_keys(Keys.CONTROL,'c')
粘贴Ctrl+V:send_keys(Keys.CONTROL,'v')
全选Ctrl+A:send_keys(Keys.CONTROL,'a')
剪切Ctrl+X:send_keys(Keys.CONTROL,'x')
制表键Tab:send_keys(Kesy.TAB)
这里只是列了一些常用的,当然除了键盘事件,也有鼠标事件
四、鼠标悬停事件
1.鼠标不仅仅可以点击(click),鼠标还有其它的操作,如:鼠标悬停在某个元素上,鼠标右击,鼠标按住某个按钮拖拽
2.鼠标事件需要先导入模块:from selenium.webdriver.common.action_chains import ActionChains
perform() 执行所有ActionChains中的行为
move_to_element() 鼠标悬停
3.这里以百度页面设置按钮为例
# coding:utf-8
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
import time
driver=webdriver.Chrome()
driver.get("https://www.baidu.com")
time.sleep(2)
s=driver.find_element_by_id("s-usersetting-top")
#鼠标悬停在搜索设置按钮上
ActionChains(driver).move_to_element(s).perform()
4.除了常用的鼠标悬停事件外,还有
右击鼠标:context_click()
双击鼠标:double_click()
替换上面案例中对应的鼠标事件就可以了
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。