使用pyautogui时热键似乎无效
在使用pyautogui的快捷键时,它们完全不管用。我尝试了两种不同的方法来让它工作。
还有其他我应该尝试的方法吗?或者我现在用的方法有什么解决办法吗?
pyautogui.keyDown(ctrl)
pyautogui.keyDown(t)
pyautogui.keyUp(ctrl)
pyautogui.keyUp(t)
我在这里遇到的错误是:NameError: name 'ctrl' is not defined
pyautogui.hotkey('ctrl , t')
就是完全不管用
有没有人能帮帮我?我想自动打开标签页和其他东西,但就是搞不定。
2 个回答
0
https://pyautogui.readthedocs.io/en/latest/keyboard.html#keyboard-keys
来自文档的内容:
以下是可以传递给
press()
、keyDown()
、keyUp()
和hotkey()
函数的有效字符串:
请注意,下面的数组中的值是字符串。
所以 pyautogui.keyDown('ctrl')
是正确的,但 pyautogui.keyDown(ctrl)
会出错,除非你之前定义了一个叫 ctrl
的变量。
0
pyautogui.hotkey()
这个方法有时候不太靠谱,打开和关闭标签页其实有更好的办法。你可以用 webbrowser
这样来操作:
import webbrowser
webbrowser.open("https://example.com") #opens tab in default browser
webbrowser.open("https://example.com", new=1) #opens a tab in a second browser (if possible)
不过,webbrowser
不能用来关闭标签页。如果你需要关闭标签页,而 pyautogui.hotkey()
又不管用的话,可以试试 keyboard
:
import keyboard
keyboard.press_and_release('ctrl+w') #closes the tab