python+selenium模拟鼠标操作

from selenium.webdriver.common.action_chains import ActionChains   #导入鼠标相关的包

--------------------------------------------------------------------------------------------

submit = driver.find_element_by_id(‘kw‘)                  #首先创建对象

ActionChains(driver).click(submit).perform()                            #左键

ActionChains(driver).context_click(submit).perform()              #右键

ActionChains(driver).double_click(submit).perform()                #双击

----------------------------------------------------------------------------------------------------------------------

ActionChains(driver).drag_and_drop_by_offset(submit,10,10).perform()              #拖放到指定坐标位置

#target也是创建的一个对象

ActionChains(driver).drag_and_drop(submit,target).perform()                    #拖放到目标元素位置

--------------------------------------------------------------------------------------------

ActionChains(driver).move_by_offset(10,10).perform()                                 #鼠标在指定坐标悬停

ActionChains(driver).move_to_element(submit).perform()                              #鼠标在指定元素悬停

ActionChains(driver).move_to_element_with_offset(submit,5,5).perform()     #鼠标在指定元素的指定坐标悬停

---------------------------------------------------------------------------------------------------------

ActionChains(driver).click_and_hold(submit).perform()                               #鼠标左键元素并保持

ActionChains(driver).context_click(submit).perform()                             #鼠标右键元素并保持

-----------------------------------------------------------------------------------------------

ActionChains(driver).key_down(Keys.CONTROL).send_keys(‘c‘).key_up(Keys.CONTROL).perform()               #ctrl+c 拷贝组合键

================================================================================================

from selenium import webdriverfrom selenium.webdriver.common.keys import Keys                   #导入键盘相关的包from selenium.webdriver.common.action_chains import ActionChains   #导入鼠标相关的包from time import sleep

driver = webdriver.Firefox()         # 指定和打开浏览器driver.get(‘http://www.baidu.com‘)

#driver.find_element_by_id(‘kw‘).send_keys(‘中国‘)#sleep(4)

#submit = driver.find_element_by_id(‘su‘)#ActionChains(driver).click(submit).perform()          #对搜索按钮 鼠标左点击#sleep(4)

#------------------------------------------------------------------------------------------

#submit = driver.find_element_by_link_text("设置")#ActionChains(driver).move_to_element(submit).perform()         #鼠标悬停在上面#sleep(5)

#driver.find_element_by_class_name("setpref").click()      # 打开搜索设置#sleep(2)

#-----------------------------------------------------------------------------------------
location01 = driver.find_element_by_link_text(‘新闻‘)              # 鼠标拖动事件
sleep(7)location02 = driver.find_element_by_link_text(‘更多产品‘)ActionChains(driver).drag_and_drop(location01, location02).perform()

sleep(8)

driver.close()

=============================================================================================

from selenium import webdriverfrom selenium.webdriver.common.keys import Keys                   #导入键盘相关的包from selenium.webdriver.common.action_chains import ActionChains   #导入鼠标相关的包from time import sleep

driver = webdriver.Firefox()         # 指定和打开浏览器driver.get(‘http://www.baidu.com‘)

driver.find_element_by_id(‘kw‘).send_keys(‘中国‘)sleep(4)

driver.find_element_by_id(‘kw‘).click()

ActionChains(driver).key_down(Keys.CONTROL).send_keys(‘a‘).key_up(Keys.CONTROL).perform()  #全选sleep(4)ActionChains(driver).key_down(Keys.CONTROL).send_keys(‘c‘).key_up(Keys.CONTROL).perform()  #复制、拷贝sleep(4)driver.find_element_by_id(‘kw‘).click()ActionChains(driver).key_down(Keys.CONTROL).send_keys(‘v‘).key_up(Keys.CONTROL).perform()   #粘贴

sleep(8)

driver.close()

原文地址:https://www.cnblogs.com/xiaobaibailongma/p/12041758.html

时间: 2024-10-10 14:19:07

python+selenium模拟鼠标操作的相关文章

python selenium模拟滑动操作

selenium.webdriver提供了所有WebDriver的实现,目前支持FireFox.phantomjs.Chrome.Ie和Remote quit()方法会退出浏览器,而close()方法只是关闭页面,但如果只有一个页面被打开,close()方法同样会退出浏览器 使用remote WebDriver 使用remote WebDriver之前,需要先启动selenium server,命令如下: java -jar selenium-server-standalone-2.x.x.ja

[python]利用selenium模拟用户操作抓取天猫评论数据

准备: python3.5 安装selenium包 第一种方法: cmd里输pip install selenium,但是经常报错 第二种方法: 下载安装包-cmd进入解压路径-python setup.py install-报错permission denied-右键安全更改报错文件夹权限为完全控制-再次安装成功unknown error: unable to discover open pages-下载chromedriver放在环境变量目录下测试自动打开百度时提示"您使用的是不受支持的命令

python + selenium 模拟键盘升级版PyUserInput

前言在web自动化下载操作时,有时候会弹出下载框,这种下载框不属于web的页面,是没办法去定位的(有些同学一说到点击,脑袋里面就是定位!定位!定位!)有时候我们并不是非要去定位到这个按钮再去点击,学会使用键盘的快捷键操作,也能达到一样的效果.之前讲过一篇Selenium2+python自动化75-非input文件上传(SendKeys)这个当时是基于python2写的.最近很多小伙伴开始用python3了,这个SendKeys在python3上没法用,python3需要用PyUserInput,

python + selenium webdriver 通过python来模拟鼠标、键盘操作,来解决SWFFileUpload调用系统底层弹出框无法定位问题

Webdriver是基于浏览器操作的,当页面上传文件使用的是flash的控件SWFFileUpload调用的时候,调用的是系统底层的文件选择弹出框 这种情况,Webdriver暂时是不支持除页面外的其他操作 前期尝试过很多种方法,比如send_keys("path"),但是都无法解决 虽然Webdriver无法对底层进行操作,但是Python的扩展是可以的 通过模拟鼠标.键盘的操作,可以解决这个问题,但是这个方法比较笨,而且不怎么理想,如果有好的方法,请留言给我,谢谢! 解决方法: 1

用Mouse_event()来模拟鼠标操作(转载)

在自动化测试的开发中,有一些控件的ID是很难找到的,所以有些时候,我们直接设置鼠标的位置,然后是用click事件,会收到很好的效果.在Windows API中有个mouse_event函数为我们准备好了这一切. 这个函数在user32.dll这个库文件里面.我们可以在C:\WINDOWS\system32(XP系统)这个目录下找到这个文件,他是系统自带的. 我们以C#直接调用这个文件中的API为例子来说下怎么进行鼠标操作,首先在我们C#中声明引用,如果是一个基于From的程序,这个声明的位置写在

python + selenium 模拟键盘

ActionChains类鼠标操作的常用方法:引入ActionChains类:from selenium.webdriver.common.action_chains import ActionChains 1.右击方法:context_click()实例:ActionChains(driver).context_click(driver.find_element_by_id("id")).perform()---------------------------------------

robot framework + selenium2——模拟鼠标操作

mouse down关键字:模拟按下鼠标的左键操作 该关键字接收一个参数[locator],可以通过id.name.xpath等进行定位 mouse down id=kw ===================================================================================================================================================== mouse up关键字:用来

selenium webDriver 鼠标操作

之前网上查资料都是 action2.click();  经测试不行的.最后发现action2.click().perform(); 才有效.至于为什么目前还不清楚,但至少会用了.现在就把我的代码copy过来: 代码示例: //只有对象是visible时才可以操作,所以要等待状态变为visible WebElement mC = driver.findElement(By.xpath("//div[contains(text(),'产品详情')]/../../div/img" )); i

python爬虫入门(五)Selenium模拟用户操作

爬虫(Spider),反爬虫(Anti-Spider),反反爬虫(Anti-Anti-Spider) 之间恢宏壮阔的斗争... 小莫想要某站上所有的电影,写了标准的爬虫(基于HttpClient库),不断地遍历某站的电影列表页面,根据 Html 分析电影名字存进自己的数据库. 这个站点的运维小黎发现某个时间段请求量陡增,分析日志发现都是 IP(xxx.xxx.xxx.xxx)这个用户,并且 user-agent 还是 Python-urllib/2.7 ,基于这两点判断非人类后直接在服务器上封杀