【问题标题】:Platform independent tool to copy text to clipboard将文本复制到剪贴板的独立于平台的工具
【发布时间】:2011-05-17 12:39:43
【问题描述】:

我正在尝试编写一个将字符串参数复制到剪贴板的函数。我打算在我一直在研究的 Python 脚本中使用它。这是我到目前为止所拥有的(在另一个堆栈溢出帖子中发现了大多数这个 sn-p):

from tkinter import Tk

    def copy_to_clipboard(text):
        text = str(text)
        r = Tk()
        r.withdraw()
        r.clipboard_clear()
        r.clipboard_append(text)
        r.destroy()

我的问题是当脚本停止时,复制的文本不再在剪贴板上。

是否有任何可能的替代方案或解决方案?

我的问题是否有一个独立于平台的良好解决方案?还是我必须检查用户使用的操作系统并从那里继续?

【问题讨论】:

  • 我已经尝试过了,同样的问题仍然存在。不过还是谢谢。

标签: python wxpython tkinter clipboard


【解决方案1】:

我想您正在使用 Gnome 在 Linux 上运行。

这是 Gnome 上的正常行为,只要副本的来源消失,例如关闭您从中复制的浏览器窗口,剪贴板数据也会被删除。解决方法是安装gnome-clipboard-daemon,它将像 Windows 和 KDE 一样保留剪贴板状态。

因此,在 Gnome 下运行时,除了让脚本运行之外,您无能为力。

【讨论】:

  • 但这会增加(某种)gnome-clipboard-daemon 的依赖,对吧?
  • @Sparragus 是的,守护进程必须在后台运行。
  • 我用的是Ubuntu 12.04,仓库里没有这个东西。
【解决方案2】:

是的,有一个适合你:)

使用pyperclip

【讨论】:

    【解决方案3】:

    这对我有用,而且非常简单。 (仅限 mac 测试)

    http://www.macdrifter.com/2011/12/python-and-the-mac-clipboard.html

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-03-22
      相关资源
      最近更新 更多