我正在尝试使用依赖pyvirtualdisplay
的Python库Xvfb
在虚拟显示器中运行Web浏览器。问题是我需要最大化浏览器,这是我无法实现的。我启动了一个大小为1024x768的显示器,但浏览器只占用了一部分屏幕,并且无法最大化它。我甚至尝试使用应该打开它的标志来运行浏览器最大化(google-chrome -start-maximized
),但没有成功。由于没有按钮来最大化窗口,我尝试按F11
进入全屏模式,但只占用屏幕的相同部分。
结果如下图所示:
我用来启动显示的代码:
from pyvirtualdisplay import Display
Display(visible=1, size=(1024,768)).start()
答案 0 :(得分:2)
问题是我没有使用窗口管理器,所以安装Fluxbox(一个轻量级的)并在启动虚拟显示后运行它就可以了。
答案 1 :(得分:2)
对于Chrome参数,请指定尺寸和位置:
{{ url_for('static', filename='path/inside/the/static/directory') }}
答案 2 :(得分:1)
我遇到了同样的问题。如果您不想使用完整的窗口管理器,以下应该可以很好地工作:
import Xlib
import Xlib.display
### Create virtual display and open the browser here ###
dpy = Xlib.display.Display()
root = dpy.screen().root
geometry = root.get_geometry()
for win in root.query_tree().children:
win.configure(x = 0, y = 0,
width = geometry.width, height = geometry.height)
dpy.sync()