Pykeyboard 和 Pymouse 自动化操作

三篇参考文章:

https://blog.csdn.net/weixin_51802807/article/details/121179861
https://www.cnblogs.com/zjutlitao/p/10188434.html
https://zhuanlan.zhihu.com/p/137133751

技巧:

用cmd命令打开网页,这种方法可以省去鼠标操作可能带来的延迟,而且可以运行电脑上任何位置的程序
https://blog.csdn.net/yekui/article/details/83802667
start 网站 (用该语法打开网站)
下面给出代码演示

from pykeyboard import *
import time   # 连续进行两个动作可能太快而效果不明显,因此加入暂停时间

k = PyKeyboard() #建立键盘对象

k.press_key(k.windows_l_key)  # 按住Win键
k.tap_key('r')  # 点击r键
k.release_key(k.windows_l_key)  # 松开Win键
time.sleep(0.2)  # 需等待界面跳转,0.2是极限,0.1就不好用了
k.tap_key(k.enter_key)

time.sleep(0.2)
k.type_string('start https://www.bilibili.com/?spm_id_from=333.999.b_696e7465726e6174696f6e616c486561646572.1')
k.tap_key(k.enter_key)

当然,用cmd更便于打开本地的文件,只需复制文件地址一步打开,下面给出演示

from pymouse import *    # 模拟鼠标所使用的包
from pykeyboard import *
import pyperclip
import time   # 连续进行两个动作可能太快而效果不明显,因此加入暂停时间

m = PyMouse()   # 鼠标的实例m
k = PyKeyboard() #建立键盘对象
x_dim, y_dim = m.screen_size()


k.press_key(k.windows_l_key)  # 按住win键
k.tap_key('r')  # 点击r键
k.release_key(k.windows_l_key)  # 松开win 键
time.sleep(0.5)
k.tap_key(k.enter_key)

pyperclip.copy(r"C:\Users\ZJL\Desktop\软件\Firefox.lnk")
time.sleep(0.5)
k.press_key(k.control_key)
k.tap_key('v')
k.release_key(k.control_key)
k.tap_key(k.enter_key)

这里要说明的是,pykeyboard不能输入中文,需要用pyperclip对字符串进行copy,然后模拟键盘CTRL cv

另外注意:

1)pykeyboard 组合键使用时,需要用小写字母
例如:
模拟 alt+z

k.press_key(k.alt_key)  # 按住Alt键
k.tap_key('z')  # 点击z键
k.release_key(k.alt_key)  # 松开Alt键

2)用 m.position() 获取当前鼠标位置坐标
3)需要引入time模块,调整触发时间

赞赏