python可以记录操作鼠标键盘操作吗

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python可以记录操作鼠标键盘操作吗相关的知识,希望对你有一定的参考价值。

参考技术A

可以,需要第三方扩展。

import pyHook
import pythoncom

def onclick(event):
    print event.Position
    return True

hm = pyHook.HookManager()
hm.SubscribeMouseAllButtonsDown(onclick)
hm.HookMouse()
pythoncom.PumpMessages()
hm.UnhookMouse()

本回答被提问者采纳

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

前言

在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了。本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件
有些web界面的选项菜单需要鼠标悬停在某个元素上才能显示出来(如百度页面的设置按钮)。

一、简单操作

    1.点击(鼠标左键)页面按钮:click()

    2.请空输入框:clear()

    3.输入字符串:send_keys()

    4.打开测试部落论坛后,点击放大镜搜索图标,一般为了保证输入的正确性,可以先清空下输入框,然后输入搜索关键字

 

二、submit提交表单

    1.在前面百度搜索案例中,输入关键字后,可以直接按回车键搜索,也可以点搜索按钮搜索。

    2.submit()一般用于模拟回车键

    3.但是论坛的搜索,如果用submit的话,会报错,可是又没有搜索点击按钮,怎么办呢?


三、键盘操作

    1.selenium提供了一整套的模拟键盘操作事件,前面submit()方法如果不行的话,可以试试模拟键盘事件

    2.模拟键盘的操作需要先导入键盘模块:from selenium.webdriver.common.keys import Keys

    3.模拟enter键,可以用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(Keys.TAB) 

这里只是列了一些常用的,当然除了键盘事件,也有鼠标事件


四、鼠标悬停事件

    1.鼠标不仅仅可以点击(click),鼠标还有其它的操作,如:鼠标悬停在某个元素上,鼠标右击,鼠标按住某个按钮拖到

    2.鼠标事件需要先导入模块:from selenium.webdriver.common.action_chains import ActionChains

perform() 执行所有ActionChains中的行为

move_to_element() 鼠标悬停

    3.这里以百度页面设置按钮为例

    4.除了常用的鼠标悬停事件外,还有

右击鼠标:context_click()

双击鼠标:double_click()

依葫芦画瓢,替换上面案例中对应的鼠标事件就可以了

selenium提供了一整套完整的鼠标和键盘行为事件,功能还是蛮强大滴。下一篇介绍多窗口的情况下如何处理。




以上是关于python可以记录操作鼠标键盘操作吗的主要内容,如果未能解决你的问题,请参考以下文章

请用Python如何模拟键盘操作

Python 键盘鼠标监听

有啥好的软件可以实现录制鼠标和键盘的操作(尽量少手敲),生成脚本供python调用?

Python自动操作 GUI 神器——PyAutoGUI

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

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