Selenium 元素常用操作方法(键盘和鼠标事件)

一、简单操作


  • click():点击
  • send_keys():输入
  • clear():清空
  • submit():提交表单
  • size:返回元素的尺寸
  • text:获取元素的文本
  • get_attribute():获取元素的属性值
  • title:获取当前页面标题
  • current_url:获取当前页面URL
  • is_displayed():返回元素是否可见

输入、清空、点击操作

代码:

# coding = utf-8
from time import sleep
from selenium import webdriver
# 驱动文件路径
driverfile_path = r‘D:\coship\Test_Framework\drivers\chromedriver.exe‘
# 启动浏览器
driver = webdriver.Chrome(executable_path=driverfile_path)
# 打开百度首页
driver.get(r‘https://www.baidu.com/‘)
driver.find_element_by_css_selector("#kw").send_keys("selenium")
sleep(2)
driver.find_element_by_css_selector("#kw").clear()
sleep(2)
driver.find_element_by_css_selector("#kw").send_keys("selenium")
driver.find_element_by_css_selector("#su").click()
# 等待2秒退出浏览器进程
sleep(2)
driver.quit()

submit()提交表单操作

一般用于模拟回车键(Enter)

代码:

# coding = utf-8
from time import sleep
from selenium import webdriver
# 驱动文件路径
driverfile_path = r‘D:\coship\Test_Framework\drivers\chromedriver.exe‘
# 启动浏览器
driver = webdriver.Chrome(executable_path=driverfile_path)
# 打开百度首页
driver.get(r‘https://www.baidu.com/‘)
driver.find_element_by_css_selector("#kw").send_keys("selenium")
# 模拟回车键
driver.find_element_by_css_selector("#kw").submit()
# 等待3秒退出浏览器进程
sleep(3)
driver.quit()

获取元素信息操作

代码:

# coding = utf-8
from time import sleep
from selenium import webdriver
# 驱动文件路径
driverfile_path = r‘D:\coship\Test_Framework\drivers\chromedriver.exe‘
# 启动浏览器
driver = webdriver.Chrome(executable_path=driverfile_path)
# 打开百度首页
driver.get(r‘https://www.baidu.com/‘)
# 获取搜索输入框尺寸
size = driver.find_element_by_css_selector("#kw").size
print("size=",size)
# 获取页面底部备案信息
text = driver.find_element_by_css_selector("#cp").text
print("text=",text)
# 获取元素的属性值,如id,name,class,type以及其他属性
attribute = driver.find_element_by_css_selector("#kw").get_attribute("class")
print("attribute=",attribute)
# 检查元素是否可见,可见返回True,不可见返回False
result = driver.find_element_by_css_selector("#kw").is_displayed()
print("resulr=",result)
# 获取当前页面标题
title = driver.title
print("title=",title)
# 获取当前页面URL
url = driver.current_url
print("url=",url)
# 等待2秒退出浏览器进程
sleep(2)
driver.quit()

二、键盘操作



webdriver提供了键盘上几乎所有的按键方法,使用前需要导入Keys类

from selenium.webdriver.common.keys import Keys

代码:

# coding = utf-8
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.keys import Keys
# 驱动文件路径
driverfile_path = r‘D:\coship\Test_Framework\drivers\chromedriver.exe‘
# 启动浏览器
driver = webdriver.Chrome(executable_path=driverfile_path)
# 打开百度首页
driver.get(r‘https://www.baidu.com/‘)
# 输入内容
driver.find_element_by_css_selector("#kw").send_keys("seleniumm")
# 删除一个字符
driver.find_element_by_css_selector("#kw").send_keys(Keys.BACK_SPACE)
# 输入空格键+"教程"
driver.find_element_by_css_selector("#kw").send_keys(Keys.SPACE)
driver.find_element_by_css_selector("#kw").send_keys("教程")
# 全选输入框内容
driver.find_element_by_css_selector("#kw").send_keys(Keys.CONTROL,‘a‘)
# 剪切内容
driver.find_element_by_css_selector("#kw").send_keys(Keys.CONTROL,‘x‘)
# 粘贴内容
driver.find_element_by_css_selector("#kw").send_keys(Keys.CONTROL,"v")
# 回车键
driver.find_element_by_css_selector("#kw").send_keys(Keys.ENTER)
# 等待3秒退出浏览器进程
sleep(3)
driver.quit()

三、鼠标操作



同样,webdriver也提供了一整套鼠标操作方式,如:右击,双击,悬停,拖动等,使用前需要导入ActionChains类。

from selenium.webdriver.common.action_chains import ActionChains

ActionChains类提供了鼠标操作的常用方法:

  • perform():执行所有ActionChains中存储的行为
  • context_click():右击
  • double_click():双击
  • drag_and_drop:拖动
  • move_to_element():鼠标悬停

代码:

# coding = utf-8
from time import sleep
from selenium import webdriver
from selenium.webdriver.common.action_chains import ActionChains
# 驱动文件路径
driverfile_path = r‘D:\coship\Test_Framework\drivers\chromedriver.exe‘
# 启动浏览器
driver = webdriver.Chrome(executable_path=driverfile_path)
# 打开百度首页
driver.get(r‘https://www.baidu.com/‘)
# 鼠标悬停在百度首页设置上
set = driver.find_element_by_link_text("设置")
ActionChains(driver).move_to_element(set).perform()
# 等待3秒退出浏览器进程
sleep(3)
driver.quit()

原文地址:https://www.cnblogs.com/eastonliu/p/9101866.html

时间: 2024-11-13 08:01:17

Selenium 元素常用操作方法(键盘和鼠标事件)的相关文章

3、操作元素:模拟键盘、鼠标事件

一.简单操作 1.点击(鼠标左键)页面按钮:click()  2.清空输入框:clear() 3.输入字符串:send_keys() 4.send_keys()如果是収送中文的,前面需加 u,如:u"中文",因为这里是输入windows 系统,windows 系统是 GBK 编码,我们的脚本是 utf-8,需要转码为 Unicode 国际编码,返样才能识别到 5.submit()模拟提交操作 二.模拟鼠标操作 在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionC

WPF之路-键盘与鼠标事件 - 简书

原文:WPF之路-键盘与鼠标事件 - 简书 键盘事件 事件类型分为以下几个类型 生命周期事件:在元素加载与卸载的时候发生 鼠标事件:鼠标动作 键盘事件:键盘动作 手写笔事件:适用于win7以上的系统 多点触控事件:一个手指或多个手指的触控动作 键盘事件 键盘事件的执行顺序: PrevieKeyDown KeyDown PreviewTextInput TextInput PreviewKeyUp KeyUp 下面以实例代码证实: 在TextBox中分别添加PreviewKeyDown/KeyDo

winform中键盘和鼠标事件的捕捉和重写(转)

在 编写winform应用程序时,有时需要无论在哪个控件获取焦点时,对某一个键盘输入或者鼠标事件都进行同样的操作.比如编写一个处理图片的应用程序时, 希望无论当前哪个控件获得焦点,当用户按上.下.左.右键时,图片控件的滚动条都会上下左右移动,当用户拨动鼠标滚轮时图片总能发大或缩小.如果对每个控 件的键盘或鼠标事件都进行设置,必然会造成很多的重复工作.本文我将介绍如何在winform下对某一个键盘输入或者鼠标事件进行相同的操作. 1.键盘事件的捕捉和重写 首先是键盘操作,为了实现上述功能,现在介绍

winform中键盘和鼠标事件的捕捉和重写

在编写winform应用程序时,有时需要无论在哪个控件获取焦点时,对某一个键盘输入或者鼠标事件都进行同样的操作.比如编写一个处理图片的应用程序时,希望无论当前哪个控件获得焦点,当用户按上.下.左.右键时,图片控件的滚动条都会上下左右移动,当用户拨动鼠标滚轮时图片总能发大或缩小.如果对每个控件的键盘或鼠标事件都进行设置,必然会造成很多的重复工作.本文我将介绍如何在winform下对某一个键盘输入或者鼠标事件进行相同的操作. 1.键盘事件的捕捉和重写 首先是键盘操作,为了实现上述功能,现在介绍win

Selenium2+python自动化12-操作元素(键盘和鼠标事件)

前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮). 一.简单操作 1.点击(鼠标左键)页面按钮:click() 2.请空输入框:clear() 3.输入字符串:send_keys() 4.打开测试部落论坛后,点击放大镜搜索图标,一般为了保证输入的正确性,可以先清空下输入框,然后输入搜索关键字 二.submit

Selenium2+python自动化12-操作元素(键盘和鼠标事件)【转载】

前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮). 一.简单操作 1.点击(鼠标左键)页面按钮:click() 2.请空输入框:clear() 3.输入字符串:send_keys() 4.打开测试部落论坛后,点击放大镜搜索图标,一般为了保证输入的正确性,可以先清空下输入框,然后输入搜索关键字 二.submit

python selenium 元素操作之键盘操作(五)

上节介绍了模拟鼠标对元素的操作,本节主要介绍键盘对元素的操作,实际过程中鼠标对元素的操作比键盘对元素的操作更经常使用,但是键盘对元素的操作也很重要,本节主要介绍一下键盘对元素的操作. selenium 提供了比较完整的键盘操作,在使用的模拟键盘操作之前需要我们导入from selenium.webdriver.common.keys import Keys即可,然后就可以来模拟键盘操作. #导入Keys 模块,然后我们看看Keys 模块定义了那些按键 from selenium.webdrive

Selenium学习笔记之015:鼠标事件

ActionChains 类: context_click()  右击 double_click()   双击 drag_and_drop()  拖动 鼠标的双击.右击.拖动等应该怎样写呢?例如右击: driver.find_element_by_id("xxx").context_click() 经过运行脚本得到了下面的错误提示: AttributeError: 'WebElement' object has no attribute 'context_click' 提示右点方法不属

Python+Selenium笔记(十四)鼠标与键盘事件

 (一) 前言 Webdriver高级应用的API,允许我们模拟简单到复杂的键盘和鼠标事件,如拖拽操作.快捷键组合.长按以及鼠标右键操作,都是通过使用webdriver的Python API 中的ActionChains类实现的. 调用ActionChains类方法时,不会立即执行,而是将所有操作都存放在一个队列里,当调用perform()方法时,队列里的操作会依次执行 (二) 与键盘和鼠标事件有关的一些重要的方法 方法 简单说明 click(on_element=None) 单击元素 on_e