Selenium Pyvirtualdisplay Hangs on starting

2019-03-27 11:15发布

问题:

I have a selenium test which I am trying to run Headlessly on my ubuntu server. It uses pyvirtualdisplay and xephyr. Though the script is running fine in my local system, it hangs when I run it in the server. I have tried to clear memory and restarting the server. But no luck. The script looks something like this :

from selenium import webdriver
from pyvirtualdisplay import Display

display = Display(visible=0, size=(1366, 768))
display.start()
driver = webdriver.Firefox()
driver.set_window_size(1366, 768)
driver.get ("http://www.google.com/")

Any help?

回答1:

Okay, finally I got through it.

sudo apt-get install xfonts-100dpi xfonts-75dpi xfonts-scalable xfonts-cyrillic

sudo apt-get -y install x-ttcidfont-conf cabextract ttf-mscorefonts-installer

sudo apt-get -y install x-ttcidfont-conf

sudo dpkg-reconfigure x-ttcidfont-conf

chose freetype, after that, when I did xvfb-run firefox then I started getting errors like this :

Xlib:  extension "RANDR" missing on display ":99".

(firefox:4691): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
//bin/dbus-launch terminated abnormally without any error message

(firefox:4691): LIBDBUSMENU-GLIB-WARNING **: Unable to get session bus: Error spawning command line `dbus-launch --autolaunch=c4970e12ff5496da09501f87000001fe --binary-syntax --close-stderr': Failed to execute child process "dbus-launch" (No such file or directory)

(firefox:4691): GConf-WARNING **: Client failed to connect to the D-BUS daemon:
//bin/dbus-launch terminated abnormally without any error message

To resolve, do this :

apt-get install dbus-x11