关注pynput documentation我试过这个“剪切”:
1:在编辑器中选择一些文字
2:使用快捷方式运行this_code.py(不离开活动窗口)
from pynput.keyboard import Key, Controller
keyboard = Controller()
with keyboard.pressed(Key.ctrl):
keyboard.press('x')
keyboard.release('x')
python控制台打开实际打印:^ X.键的组合是正确的,但它没有做它想做的事情:剪切选定的文本将其存储在剪贴板中。 (我不想将剪贴板内容存储在变量中,我想要一个Ctrl + C)
我想这个答案也将解决剩下的部分:Ctrl + V(过去一些将首先插入剪贴板的数据)
答案 0 :(得分:0)
我认为您应该使用keyboard.type(msg)
代替keyboard.press(key)
答案 1 :(得分:0)
我考虑了3件事:
因为我在Mac上,组合是Command + X而不是Ctrl + X
我只能使用keyboard.press(按下并不适合我,不知道为什么),
对于特殊键,我必须使用他们的Key.value(因此,Key.ctrl变为Key.ctrl.value; Key.Shift变为Key.Shift.value ...)
< / LI>最后,这对我有用:
# I tested this code as it is in Mac OS
from pynput.keyboard import Key, Controller
keyboard = Controller()
# keyboard.press(Key.ctrl.value) #this would be for your key combination
keyboard.press(Key.cmd.value)
keyboard.press('x')
keyboard.release('x')
# keyboard.release(Key.ctrl.value) #this would be for your key combination
keyboard.release(Key.cmd.value)
即使这个问题有点陈旧,我也遇到了同样的问题,找到了适合我的解决方案。将来可能派上用场。