首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用剪贴板和pyvirtualdisplay

使用剪贴板和pyvirtualdisplay
EN

Stack Overflow用户
提问于 2015-08-22 16:45:07
回答 1查看 321关注 0票数 0

我有一个运行在pyvirtualdisplay中的脚本,我需要将一个变量的值复制到我的剪贴板上。

以下工作(我的脚本的简化版本):

代码语言:javascript
复制
from selenium import webdriver
import clipboard

driver = webdriver.Chrome("/home/name/chromedriver")
driver.get("http://pagewithvariable.com")
variable = find_element_by_name("variable")

clipboard.copy(variable)

以下内容不起作用

代码语言:javascript
复制
from selenium import webdriver
import clipboard
from pyvirtualdisplay import Display

display = Display(visible=0, size=(800, 600))
display.start()

driver = webdriver.Chrome("/home/name/chromedriver")
driver.get("http://pagewithvariable.com")
variable = find_element_by_name("variable")

clipboard.copy(variable)

在pyvirtualdisplay中运行剪贴板时遇到的错误如下:

代码语言:javascript
复制
XIO:  fatal IO error 11 (Resource temporarily unavailable) on X server ":1195"
  after 11 requests (8 known processed) with 0 events remaining.

(请帮助:)

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-08-22 17:46:53

好的,原来pyvirtualdisplay的剪贴板是完全独立的,并且没有迹象表明可以在虚拟显示中使用操作系统的剪贴板。

因为剪贴板在大多数情况下都是在脚本退出时使用的,所以当显示关闭时,剪贴板就能工作。我以前是这样做的,但不起作用:

代码语言:javascript
复制
display.popen.terminate()

当显示以下列方式关闭时,在该点之后声明的剪贴板正常工作:

代码语言:javascript
复制
display.stop()

我的问题是谷歌在这个话题上唯一提出的问题,所以我决定其他人可能会发现它很有用。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/32158489

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档