python3+selenium入门08-鼠标事件】的更多相关文章

使用click()可以模拟鼠标的左键点击事件,现在的web页面中有很多其他的鼠标交互方式,比如鼠标右击.双击.悬停.鼠标拖放等功能.在WebDriver中,将这些关于鼠标操作的方法封装在ActionChains类. 导入ActionChains类 from selenium.webdriver.common.action_chains import ActionChains ActionChains类常用的方法: context_click():鼠标右键 double_click():鼠标双击…
Keys类提供了键盘上几乎所有按键的方法.通过send_keys()方法不仅可以用来模拟键盘输入,还可以用它来模拟键盘上的按键.包括组合键,比如Ctrl+a等 需要导入Keys类 from selenium.webdriver.common.keys import Keys from selenium.webdriver.common.keys import Keys from selenium import webdriver import time dr = webdriver.Chrome…
Selenium WebDriver 中鼠标事件(全) 鼠标点击操作  鼠标点击事件有以下几种类型:  清单 1. 鼠标左键点击   Actions action = new Actions(driver);action.click();// 鼠标左键在当前停留的位置做单击操作   action.click(driver.findElement(By.name(element)))// 鼠标左键点击指定的元素  清单 2. 鼠标右键点击   Actions action = new Action…
有时有些功能需要通过js来执行,比如拖动浏览器的滚动条.通过execute_script()方法可以执行js的代码 window.scrollTo()可以传两个参数,第一个参数是下方滚动条的位置,第二个参数是右边滚动条的参数 from selenium import webdriver import time dr = webdriver.Firefox() dr.get('https://www.baidu.com') dr.set_window_size(600,600)#设置浏览器大小,让…
1.鼠标事件:# 每个模拟事件后需加.perform() 才会执行# context_click() 右击# double_click() 双击# drag_and_drop(source, target) 拖动# move_to_element() 鼠标悬停# move_to 移动 from selenium import webdriverfrom selenium.webdriver.common.action_chains import ActionChainsdriver = webd…
一.鼠标事件 在 WebDriver 中, 将这些关于鼠标操作的方法封装在 ActionChains 类提供. ActionChains 类提供了鼠标操作的常用方法. ActionChains 类的成员源码如下图所示: 下面我们通过一张表对上图中对外使用的成员进行分类(即带下划线的成员不放入下表): 分类 函数名 描述 鼠标操作 def click(self, on_element=None) 鼠标左键单击 鼠标操作 def click_and_hold(self, on_element=Non…
鼠标点击操作  鼠标点击事件有以下几种类型:  清单 1. 鼠标左键点击   Actions action = new Actions(driver);action.click();// 鼠标左键在当前停留的位置做单击操作   action.click(driver.findElement(By.name(element)))// 鼠标左键点击指定的元素    清单 2. 鼠标右键点击   Actions action = new Actions(driver);    action.conte…
一.键盘事件 ctrl+a driver.findElement(By.id("kw")).sendKeys(Keys.CONTROL, "a"); ctrl+x driver.findElement(By.id("kw")).sendKeys(Keys.CONTROL, "x"); ctrl+c driver.findElement(By.id("kw")).sendKeys(Keys.CONTROL,…
1 鼠标 集成在webdriver.ActionChains.单击.双击.右击.拖放等等.   2 键盘 引入包from selenium.webdriver.common.keys import Keys.键盘上按键几乎都有. #coding=utf-8 # 鼠标 webdriver.ActionChains # 键盘 Keys from selenium import webdriver from selenium.webdriver.common.keys import Keys impo…
作为一个测试,在最近两年应该有明显的感觉.那就是工作变的难找,要求变的高了,自动化测试,性能测试等.没有自动化测试能力,只会点点点工作难找不说,工资也不高.所以还是要学习一些技术.首先要学习一门编程语言.然后自动化入门可以学习selenium.有java基础可以使用java.没有语言基础的推荐学习python3.网上的教程很多,推荐廖雪峰的python教程. selenium的学习更多是个入门,过渡的作用.感觉其实ui自动化很少用.而且能测试到的东西较少.之后可以继续去学习接口自动化相关的东西.…
在WebDriver中要处理JS生成的alert.confirm以及prompt,需要使用到switch_to_alert()定位到alert/confirm/prompt,然后再使用text.accept().dissmiss().send_keys()等方法进行操作. text:获得alert/confirm/prompt中的文本信息 accept():接受警告框 dissmiss():关闭警告框 send_keys():发送文本信息到警告框 from selenium import web…
我们在对浏览界面做操作时,比如点击按钮,搜索框输入内容.都需要把鼠标挪过去,然后再点击,或者输入内容.在selenium操作时也是一样的.需要先对元素进行定位,然后才能进行操作.可以借助浏览器的开发者工具(浏览器F12打开)来查看网页对应的html代码.然后进行定位.可以稍微学习HTML基础,更容易理解. 定位方式有八种,这八种各有两个方法,一个是find_element_by_方式,这是定位单个元素的.一个是find_elements_by_方式,这是用来定位多个元素的. 使用name属性定位…
使用selenium打开浏览器的时候,需要先去selenium官网下载一个对应浏览器的的driver插件.selenium下载.官网在国外可能打不开.或者可以从我网盘下载,但可能不是最新的网盘链接.将下载好的文件解压出来,将.exe文件放到python3的安装目录下即可. from selenium import webdriver dr = webdriver.Firefox() dr.get('https://www.baidu.com') dr.close() webdriver.Fire…
鼠标点击操作  鼠标点击事件有以下几种类型:  清单 1. 鼠标左键点击   Actions action = new Actions(driver);action.click();// 鼠标左键在当前停留的位置做单击操作   action.click(driver.findElement(By.name(element)))// 鼠标左键点击指定的元素  清单 2. 鼠标右键点击   Actions action = new Actions(driver);    action.context…
有时候需要把一些浏览器当前窗口截图下来,比如操作抱错的时候.WebDriver类下.get_screenshot_as_file()方法可窗口截图,需要传入一个截图文件名的路径.window要用\\当做路径符 from selenium import webdriver import time dr = webdriver.Firefox() dr.get('https://www.baidu.com') dr.find_element_by_id('kw').send_keys('seleni…
上传文件一种方式是通过定位input标签,然后使用send_keys()方法传入需要上传文件的路径.另一种是使用第三方插件去上传文件.下面看下imput标签的方式.工具可以自己查下. <!DOCTYPE html> <html> <head> </head> <body> <form action="demo_form.php"> <input type="file" name="…
可以把cookie理解为自己账户的身份证.因为http协议是无状态的,上一个请求和下一个请求没有关系.但是有时需要有关联.比如登录之后,才能进行操作这样的设置.这个就是cookie在起作用.登录成功时,服务器会给浏览器一个cookie,浏览器会解析存在本地.然后同一个网站,下一次请求时就会把这个cookie带上,告诉服务器是哪个用户在操作.在关闭浏览器时cookie有效期结束. WebDriver提供了一些用来操作cookie的方法: get_cookies():获得cookie所有信息,返回的…
在打开新的浏览器窗口时,如果要定位新窗口的元素,需要先切换到这个新打开的窗口中,才能定位到该窗口下的元素. current_window_handle:获取当前句柄.可以把句柄理解成窗口的身份证 window_handles:获取所有打开窗口的句柄 from selenium import webdriver import time dr = webdriver.Chrome() dr.get('https://www.baidu.com') dr.maximize_window() win_h…
当元素在ifarm或farm中时,需要先进入到表单中,然后才能定位元素进行操作.直接对元素定位.会提示元素无法找到. <!DOCTYPE html> <html> <head> </head> <body> <iframe id = 'if' src="https://www.baidu.com" width="800" height='300'> </iframe> </bo…
在使用selenium进行操作时,有时候在定位元素时会报错.这可能是因为元素还没有来得及加载导致的.可以等过元素等待,等待元素出现.有强制等待,显式等待,隐式等待. 强制等待 就是之前文章中的time.sleep(),只是为了看到界面操作效果才那样设置的.这个是不管找没找到都会等待的.基本代码中不会用这个. 显式等待 WebDriverWait类是WebDriver提供的等待方法.在设置的时间内,会每隔一段时间去检查一次当前页面元素是否存在,如果超过设置时间还没有见到到就抛出异常.具体格式如下:…
WebDriver主要提供元素操作的方法,但也提供了一些关于浏览器操作的方法,比如设置浏览器大小,浏览器前进,后退,刷新等 设置浏览器大小 有时候需要设置浏览器大小,比如访问收集网页,设置浏览器大小跟手机一样大的尺寸,比如(480*800) from selenium import webdriver dr = webdriver.Chrome() dr.set_window_size(480,800) 浏览器最大化 from selenium import webdriver dr = web…
学习了元素定位之后,来看一些元素的操作,还有一些常用的方法 clear()清空输入框内容 click()点击 send_keys()键盘输入 import time from selenium import webdriver dr = webdriver.Chrome() dr.get('https://www.baidu.com')#打开百度 st = dr.find_element_by_name('wd')#定位搜索框 st.send_keys('测试一下')#输入内容 time.sle…
操作谷歌浏览器同样也需要下载相应的driver插件,官网下载.也可以从我的网盘下载,不过可能不是最新的,网盘地址.打开谷歌浏览器的操作和火狐的差不过. from selenium import webdriver dr = webdriver.Chrome() dr.maximize_window() dr.get('https://www.baidu.com') dr.close() webdriver.Chrome()初始化一个谷歌浏览器的实例,maximize浏览器最大化.get()打开相…
注意:ActionChains下相关方法在当前的firefox不工作,建议使用谷歌浏览器. public static void main(String[] args) throws InterruptedException { System.setProperty("webdriver.chrome.driver", "D:/chromedriver_win32/chromedriver.exe"); ChromeOptions Options = new Chr…
引用包来自selenium-java-2.23.1.jar 调用以下代码时,需要引入actions类,以java为例: import org.openqa.selenium.interactions.Actions; 鼠标事件-概述 1.单击 click().click(WebElement onElement) 2.双击doubleClick() . doubleClick(WebElement onElement) 3.右击contextClick(). contextClick(WebEl…
[环境信息] python3.6+Selenium3.0.2+Firefox50.0+win7 [ActionChains类鼠标事件的常用方法] 1.右击:context_click() 2.双击:double_click() 3.拖动:drag_and_drop() 4.鼠标悬停在一个元素上:move_to_element() 5.按下鼠标左键在一个元素上:click_and_hold() [问题] 在调用perform()方法时报错,不知道是不是环境配置问题,调用ActionChains中的…
# -*- coding: utf-8 -*-#鼠标事件 #ActionChains类中包括:                     # context_click()  右击:                        # double_click() 双击:                        # drag_and_drop() 拖动:                        # move_to_element()鼠标悬停在一个元素上:#首先引入ActionChains…
前言 在前面的几篇中重点介绍了一些元素的定位方法,定位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮). 一.简单操作 1.点击(鼠标左键)页面按钮:click() 2.请空输入框:clear() 3.输入字符串:send_keys() 4.打开测试部落论坛后,点击放大镜搜索图标,一般为了保证输入的正确性,可以先清空下输入框,然后输入搜索关键字 二.submit…
场景 前景讲解了鼠标的click()事件,而我们在实际的web产品测试中,有关鼠标的操作,不仅仅只有单击,有时候还包括右击,双击,拖动等操作,这些操作包含在ActionChains类中. ActionChains类鼠标操作的常用方法: context_click()                           右击 double_click()                           双击 drag_and_drop()                      拖动 mov…
昨天是简单的操作.之后是复杂的操作 首先是鼠标事件 AcationChains类  鼠标操作的常用方法: 右击 context_click() 双击 double_click() 拖动      drag_and_drop() 鼠标悬停在一个元素上      move_to_element() 按下鼠标左键在一个元素上   click_and_hold() 优先介绍这个是因为有些页面的元素是隐藏的.要通过鼠标悬停才显示 这里举的例子就是博客园的.代码如下: #!/usr/bin/env pyth…