无法获取pyperclip以在python3上使用复制和粘贴模块

时间:2018-08-02 21:11:12

标签: python linux raspberry-pi

规格:

  • Python3.5
  • 最新的Pyperclip
  • 同时安装了xclip和python3-pyqt4
  • 使用ssh(Putty)使用最新的Raspian Stretch Light连接到headleass树莓pi 2模型B

Error: pyperclip.copy('Hello world!')
  File "/usr/local/lib/python3.5/dist-packages/pyperclip/__init__.py", line 612, in lazy_load_stub_copy
    return copy(text)
  File "/usr/local/lib/python3.5/dist-packages/pyperclip/__init__.py", line 297, in __call__
    raise PyperclipException(EXCEPT_MSG)
pyperclip.PyperclipException:
    Pyperclip could not find a copy/paste mechanism for your system.
    For more information, please visit https://pyperclip.readthedocs.io/en/latest/introduction.html#not-implemented-error

我还尝试了卸载和重新安装模块和剪贴板程序。香港专业教育学院搜索了2个小时以寻找答案,并全部使用了它们,但它们没有起作用。我承认我是菜鸟,但我不应该很难做到这一点。

4 个答案:

答案 0 :(得分:2)

剪贴板是GUI的一部分。但是您没有 GUI。因此,没有剪贴板可复制和粘贴。 pyperclip没有剪贴板可访问,因此无论如何尝试访问它都将失败。

您可以通过在shell上运行它来轻松测试:

Error: No display: (null)

如果它显示类似xclip的字样,那就是您的问题。


如果您认为,您应该拥有一个GUI,因为您已经进行了一些设置,例如,通过ssh将X11隧道传输到台式机上的X服务器,但是您仍然得到了echo $DISPLAY 错误,那么问题是您设置错误。最简单的检查是:

pyperclip

那是空的吗?然后,您的会话对X11隧道一无所知。对于像超级用户或Unix这样的站点而言,正确设置隧道确实是一个问题,而不是堆栈溢出-并且,一旦您解决了该问题,pyperclip和您的脚本就应该开始工作。


关于您可以做些什么……好吧,这取决于您为什么首先尝试使用( [title] => test [type] => location [status] => 1 [field_locationmap] => stdClass Object ( [und] => stdClass Object ( [0] => stdClass Object ( [geom] => stdClass Object ( [lon] => 151.19555790000004 ) ) ) 。在无头系统上,无处可复制数据,也无可粘贴数据,因此它并不是特别有用。

例如,如果您要在同一台计算机上的两个不同的Python脚本之间共享数据,那么比通过剪贴板传递数据更简单的方法-只需使用文件,管道,套接字,等等-甚至都不需要具有复杂设置的第三方库。

答案 1 :(得分:0)

我似乎记得我的第一台Raspberry Pi遇到相同的问题。尝试运行sudo apt-get install xsel。您可以了解here的功能,但实际上,它是Pyperclip可以使用的剪贴板实用程序。

如果这不起作用,则可能与您尝试通过SSH进行操作有关,但这不一定是问题。

答案 2 :(得分:0)

sudo apt-get install xclip

在终端上运行此命令,然后运行Python测试。

答案 3 :(得分:0)

您可能会收到一条错误消息,内容为:“ Pyperclip找不到系统的复制/粘贴机制。有关解决方法,请参见https://pyperclip.readthedocs.io/en/latest/introduction.html#not-implemented-error

为了在Windows,Mac和Linux上同样出色地工作,Pyperclip使用各种机制来做到这一点。当前,此错误应仅在Linux(而不是Windows或Mac)上出现。您可以通过安装复制/粘贴机制之一来解决此问题:

sudo apt-get install xsel to install the xsel utility.
sudo apt-get install xclip to install the xclip utility.