2

我有一个运行许多 python 脚本的 php 脚本。python 脚本使用了一个使用 pyvirtualdisplay 和 xvfb 的无头 firefox 浏览器。我的问题是每个 python 脚本都会在我的 linux 服务器上打开一个新的 Xvfb 进程。因此,我得到多个进程堆叠并最终耗尽 /tmp/ 空间。
我的问题与此类似:
Xvfb multiple displays for parallel processing?
我希望始终打开一个 Xvfb 服务器进程并让所有 python 脚本都使用它。
这是我正在使用的python代码:
#set pyvirtual display
display = Display(visible=0, size=(800, 600))
display.start()

4

1 回答 1

1

我已经通过从我的 python 代码中删除这些行来解决这个问题: 并添加以下行:
#set pyvirtual display
display = Display(visible=0, size=(800, 600))
display.start()


import os
os.environ['DISPLAY'] = ':1'

这样,python 脚本使用显示器 1 上已经打开的 Xvfb 进程设置,而不是启动新的 Xvfb 服务器进程。

于 2013-07-15T07:04:36.277 回答