Forums

Selenium script was working...

Now it isn't. This is the traceback:

2012-07-16 05:59:12 -- Completed task, took 2.00 seconds, return code was 1.
Traceback (most recent call last):
  File "/home/rcs1000/NewsViewer/screengrabber.py", line 9, in <module>
    display = Display(visible=0, size=(1024, 768))
  File "/usr/local/lib/python2.6/dist-packages/PyVirtualDisplay-0.1.0-py2.6.egg/pyvirtualdisplay/display.py", line 33, in __init__
    self._obj = self.display_class( 
  File "/usr/local/lib/python2.6/dist-packages/PyVirtualDisplay-0.1.0-py2.6.egg/pyvirtualdisplay/display.py", line 51, in display_class
    cls.check_installed()
  File "/usr/local/lib/python2.6/dist-packages/PyVirtualDisplay-0.1.0-py2.6.egg/pyvirtualdisplay/xvfb.py", line 33, in check_installed
    EasyProcess([PROGRAM, '-help'], url=URL, ubuntu_package=PACKAGE).check_installed()
  File "/usr/local/lib/python2.6/dist-packages/EasyProcess-0.1.4-py2.6.egg/easyprocess/__init__.py", line 202, in check_installed
    raise EasyProcessCheckInstalledError(self)
easyprocess.EasyProcessCheckInstalledError: cmd=['Xvfb', '-help']
OSError=None  
Program install error!

That's very strange, we haven't changed anything in our setup over the weekend. Do you know when it started failing? Is it intermittent, or consistently failing now?

It last worked on 10 July, I believe. (Looking at rcs1000.pythoanywhere.com)

Looks like it's caused by your /tmp directory filling up; the EasyProcess wrapper that PyVirtualDisplay uses to check that Xvfb is installed properly just assumes that any error on startup is caused by a badly-installed program, but the actual error it's getting is

[Errno 2] No usable temporary directory found in ['/tmp', '/var/tmp', '/usr/tmp', '/home/rcs1000']

Checking your file space, it looks like you've used up your complete quota. There are some big files in /tmp, probably temporary profiles from Firefox. See this other thread for a similar set of issues seen by another user.

Thanks! That's solved the issue

Excellent, thanks for letting us know!