Python获取mac剪贴板内容

2024-09-30 01:32:08 发布

您现在位置:Python中文网/ 问答频道 /正文

如何使用Python(2.7)获取Mac剪贴板的内容。有没有比用pbpaste做包装更好的方法?

谢谢!


Tags: 方法内容mac剪贴板比用pbpaste
3条回答

你看过xerox模块了吗?
它应该支持windows、OS X和Linux


用法如下:

xerox.copy(u'some string')

粘贴:

>>> xerox.paste()
u'some string'

我为“获取Mac剪贴板的内容”找到的xerox模块和大多数代码示例的问题是它们只返回纯文本。他们不支持超链接、样式等,因此他们无法真正访问微软Word和谷歌Chrome等应用程序提供的全部内容。

站在别人的肩膀上,我终于想出了办法。生成的richxerox模块在PyPIBitbucket上可用。

尽管这个问题已经过时了,但我还是把面包屑放在这里,因为在搜索答案时,我总是通过谷歌重新找到这个页面。

PyObjC是一条路:

#!/usr/bin/python

from AppKit import NSPasteboard, NSStringPboardType

pb = NSPasteboard.generalPasteboard()
pbstring = pb.stringForType_(NSStringPboardType)
print u"Pastboard string: %s".encode("utf-8") % repr(pbstring)

这只支持文本,否则将返回None。您也可以扩展它以支持其他数据类型,请参见NSPastboard Class Reference

相关问题 更多 >

    热门问题