python - Python 中的剪贴板问题

标签 python windows clipboard

我现在正在学习 Python,我想编写一些有助于我工作的脚本。这个想法是:while True: 从剪贴板读取一些字符串,修改它然后将它返回到剪贴板然后休眠。所以我可以将修改后的数据粘贴到任何地方。

现在我一直在使用 win32clipboard 模块。我正在使用这段代码:

import win32clipboard

def openClipboard():
    win32clipboard.OpenClipboard()

def closeClipboard():
    try:
        win32clipboard.CloseClipboard()
    except Exception as e:
        print(e)

def getClipboardData():
    if win32clipboard.IsClipboardFormatAvailable(win32clipboard.CF_TEXT):
        return win32clipboard.GetClipboardData()
    else:
        return None

def setClipboardData(data):
    win32clipboard.EmptyClipboard()
    win32clipboard.SetClipboardData(win32clipboard.CF_TEXT, data)

#assume that I copied '000'

openClipboard()
data = getClipboardData()
print(data) //output: 000, so it's ok
closeClipboard()

openClipboard()
win32clipboard.EmptyClipboard()
setClipboardData(data + '123')
closeClipboard()

openClipboard()
data = getClipboardData()
print(data) //output: 0 0 0 1 2 3, but wtf? o_0
closeClipboard()

我不明白为什么第二个输出中有空格?

最佳答案

ralu,谢谢。我得到它的同时我得到了你的答案。我应该使用 win32clipboard.SetClipboardText(data) 而不是 win32clipboard.SetClipboardData(win32clipboard.CF_TEXT, data)

关于python - Python 中的剪贴板问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9119899/

相关文章:

python - GIT 钩子(Hook) -> Python -> Bash : How to read user input?

python - Windows 上的 GeoDjango : Try setting GDAL_LIBRARY_PATH in your settings

python - 如何使用 Python 下载 YouTube 音频?

javascript - 将图像和json对象写入剪贴板

python - 更改 Pycharm Emacs 键绑定(bind)以使用不同的单词分隔符

python - 修复函数的奇异性

python - Python Tkinter OpenCV PIL图像调整大小以适合标签

.net - 如何像任务管理器那样计算内存使用量?

Java 剪贴板 : Paste HTML from Firefox on Linux

c# - 以透明方式将图像从 WinForms 应用程序导出到 PowerPoint