吾爱破解 - 52pojie.cn

 找回密码
 注册[Register]

QQ登录

只需一步,快速开始

查看: 1457|回复: 11
收起左侧

[Python 原创] Python 模拟用户操作鼠标

  [复制链接]
相位猛冲 发表于 2024-1-20 11:20
传入坐标x、y直接调用就行了
[Python] 纯文本查看 复制代码

import pyautogui,win32gui

鼠标_单击_模拟用户(坐标x,坐标y)

def 鼠标_单击_模拟用户(x, y, 窗口句柄=None, action=1):
    ' 模拟用户点击鼠标\n\n 窗口句柄可以不填 action=1表示左键单击,action=2表示双击'
    original_pos = pyautogui.position()
    try:
        if 窗口句柄:
            try:
                win32gui.SetForegroundWindow(窗口句柄)
            except Exception as e:
                print(f"无法设置窗口句柄({窗口句柄})为前台窗口:", e)
                return False

            x_screen, y_screen = win32gui.ClientToScreen(窗口句柄, (x, y))
            print(f"客户区坐标转屏幕坐标:({x}, {y}) -> ({x_screen}, {y_screen})")

        # 映射鼠标操作
        operations = {
            1: lambda: pyautogui.click(x_screen, y_screen),
            2: lambda: pyautogui.doubleClick(x_screen, y_screen),
            3: lambda: pyautogui.mouseDown(x=x_screen, y=y_screen, button='left'),
            4: lambda: pyautogui.mouseUp(x=x_screen, y=y_screen, button='left')
        }

        # 获取对应的鼠标操作
        operation = operations.get(action)
        if not operation:
            print(f"无效的鼠标操作: {action}")
            return False

        # 执行对应的鼠标操作
        operation()
        print(f"执行了鼠标操作: {action} 在 ({x_screen}, {y_screen})")

    except Exception as e:
        print("无法执行鼠标操作,出现异常:", e)
        return False
    finally:
        # 恢复鼠标位置
        pyautogui.moveTo(*original_pos)

    return True

免费评分

参与人数 1吾爱币 +3 热心值 +1 收起 理由
苏紫方璇 + 3 + 1 欢迎分析讨论交流,吾爱破解论坛有你更精彩!

查看全部评分

发帖前要善用论坛搜索功能,那里可能会有你要找的答案或者已经有人发布过相同内容了,请勿重复发帖。

Chenanin 发表于 2024-1-20 17:45
P3terJ 发表于 2024-1-20 16:56
函数使用了中文??

python3.x  版本就支持中文变量了,但是有可能在使用第三方库或者接口的时候出现莫名奇妙的问题
chayunyuxiang 发表于 2024-1-20 12:40
y72463700 发表于 2024-1-20 15:20
losingstars 发表于 2024-1-20 16:22
这代码能运行?
P3terJ 发表于 2024-1-20 16:56
本帖最后由 P3terJ 于 2024-1-20 16:58 编辑

函数使用了中文??
wikiyc 发表于 2024-1-20 17:35
这个方法我还真不用,学习了。
raindrop00 发表于 2024-1-20 17:39
感谢分享,学习了
JOJO2 发表于 2024-1-20 20:54
感谢楼主的分享。
sai609 发表于 2024-1-21 10:03
中文还是先行转译为English
您需要登录后才可以回帖 登录 | 注册[Register]

本版积分规则

返回列表

RSS订阅|小黑屋|处罚记录|联系我们|吾爱破解 - LCG - LSG ( 京ICP备16042023号 | 京公网安备 11010502030087号 )

GMT+8, 2024-11-24 17:30

Powered by Discuz!

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表