【发布时间】:2019-04-02 22:33:27
【问题描述】:
我想创建一个简单的 Python 应用程序,它可以与当前选定的文本进行交互,并在用户按下键盘快捷键时对其进行一些操作。最明显的方法是使用pyautogui.hotkey("ctrl", "c") 将文本复制到剪贴板,然后与之交互。问题是,此方法会覆盖用户当前在剪贴板中的所有内容。
我能想到的唯一解决方法是:
#make a backup of current clipboard contents
tmpClipboard = pyperclip.paste()
#copy selected text and store it
pyautogui.hotkey("ctrl", "c")
selectedText = pyperclip.paste()
#copy old clipboard contents back inside
pyperclip.copy(tmpClipboard)
#process selected text
doStuff(selectedText)
有什么更好的方法来处理这个问题(因为我不确定当用户在剪贴板中有一个图像而不是纯文本时这会表现如何)?
【问题讨论】: