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?
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
来源:https://stackoverflow.com/questions/22498551/selenium-pyvirtualdisplay-hangs-on-starting