Web自动化操作鼠标键盘

文章介绍了使用Python的pyuserinput库进行全局鼠标键盘事件模拟,如回车和全选操作。此外,通过pynput库也可以实现键盘输入,包括回车键和Ctrl+A全选。对于Web自动化,文章详细讲解了Selenium的ActionChains类如何执行鼠标动作,如单击、拖动,特别提到了滑块验证码的模拟拖动方法。还列举了其他特殊按键的使用,如TAB、F5等。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

方法1:全局鼠标键盘事件

# 安装全局键盘事件库
pip install pyuserinput

image.png
pykeyboard模拟键盘输入
pymouse模拟鼠标动作


方法2: python输入回车

参考地址: https://blog.youkuaiyun.com/slyjit/article/details/111522527

# 安装键盘输入库
pip install pynput

# 模拟ctrl+v 快捷粘贴时候用到
pip install pyperclip

键盘输入回车

# 导包
from pynput.keyboard import Key, Controller as C_keyboard

@staticmethod
def base_回车():
        """
        执行回车-全局键盘鼠标事件
        :return:
        """
        # 一个鼠标键盘事件对象
        keyboard = C_keyboard()
        # 按下回车
        keyboard.press(Key.enter)
        # 松开回车
        keyboard.release(Key.enter)

键盘全选

    def base_键盘全选(self):
        """
        用键盘动作执行权限
        :return:
        """
        # 一个鼠标键盘事件对象
        keyboard = C_keyboard()
        with keyboard.pressed(Key.ctrl):
            # 按下a全选
            keyboard.press('a')
            # 松开a
            keyboard.release('a')

selenium鼠标键盘操作(ActionChains)动作链

用selenium做自动化,有时候会遇到需要模拟鼠标操作才能进行的情况,比如单击、双击、点击鼠标右键、拖拽等等。而selenium给我们提供了一个类来处理这类事件——ActionChains

selenium.webdriver.common.action_chains.ActionChains(_driver_)

image.png
image.png
image.png


selenium输入回车

参考:https://blog.youkuaiyun.com/Y2L111/article/details/103470062

#引入包
from selenium.webdriver.common.keys import Keys   #引用keys包

#定位输入框元素
drive.find_element_by_id("xxx").click()
#在输入框内输入值
drive.find_element_by_id("xxx").send_keys("yyy")
#输入完成后,敲击键盘上的回车键
drive.find_element_by_id("xxx").send_keys(Keys.ENTER)

其他按键

# 输入按键是使用send_keys()方法。
#回车键是Keys.RETURN,K是大写。我们在文件头已经import Keys。
#其他的特殊按键还有:
#tab键
Keys.TAB
#shift键
Keys.SHIFT
#CTRL键
Keys.CONTROL
# ALT键
Keys.ALT
# 空格键
Keys.SPACE
# 向上翻页键
Keys.PAGE_UP
# 向下翻页键
Keys.PAGE_DOWN
# 向上键
Keys.UP
# 向下键
Keys.DOWN
# 左键
Keys.LEFT
# 右键
Keys.RIGHT
# F1键
Keys.F1
# F5键
Keys.F5
# F12键
Keys.F12
# Win键
Keys.COMMAND

单元素拖动方法,(就是滑块验证码的操作)

image.png
x是移动距离,单位是像素,源码中会有这个值,写代码的时候要比这个值大一点,比如+5.y是纵向距离,写0就行了.

单元素拖动方法源码如下:传参顺序是(element,x,y)
image.png

image.png

示例代码如下:
image.png
image.png

输入多个组合键

image.png

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

教Linux的李老师

赞赏是第一生产力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值