pyvirtualdisplay is a python wrapper for Xvfb, Xephyr and Xvnc
- Links:
- Features:
- Known problems:
only a few back-end options are supported
- Possible applications:
GUI testing
automatic GUI screenshot
Basic usages
Start Xephyr:
from pyvirtualdisplay import Display xephyr=Display(visible=1, size=(320, 240)).start()
Create screenshot of xmessage with Xvfb:
from easyprocess import EasyProcess
from pyvirtualdisplay.smartdisplay import SmartDisplay
with SmartDisplay(visible=0, bgcolor='black') as disp:
with EasyProcess('xmessage hello'):
img = disp.waitgrab()
img.show()
Installation
General
Ubuntu 14.04
sudo apt-get install python-pip sudo apt-get install xvfb xserver-xephyr vnc4server sudo pip install pyvirtualdisplay # optional sudo apt-get install python-pil scrot sudo pip install pyscreenshot # optional for examples sudo pip install entrypoint2
Uninstall
# as root pip uninstall pyvirtualdisplay
Usage
GUI Test
Testing gnumeric on low resolution:
#-- include('examples/lowres.py') --#
from easyprocess import EasyProcess
from pyvirtualdisplay import Display
if __name__ == "__main__":
Display(visible=1, size=(320, 240)).start()
EasyProcess('gnumeric').start()
#-#
Image:
Screenshot
Create screenshot of xmessage in background:
#-- include('examples/screenshot3.py') --#
'''
using :keyword:`with` statement
'''
from easyprocess import EasyProcess
from pyvirtualdisplay.smartdisplay import SmartDisplay
if __name__ == "__main__":
with SmartDisplay(visible=0, bgcolor='black') as disp:
with EasyProcess('xmessage hello'):
img = disp.waitgrab()
img.show()
#-#
Image:
vncserver
#-- include('examples/vncserver.py') --#
'''
Example for Xvnc backend
'''
from easyprocess import EasyProcess
from pyvirtualdisplay.display import Display
if __name__ == "__main__":
with Display(backend='xvnc', rfbport=5904) as disp:
with EasyProcess('xmessage hello') as proc:
proc.wait()
#-#
xauth
Some programs require a functional Xauthority file. PyVirtualDisplay can generate one and set the appropriate environment variables if you pass use_xauth=True to the Display constructor. Note however that this feature needs xauth installed, otherwise a pyvirtualdisplay.xauth.NotFoundError is raised.
Metadata
Release files for PyVirtualDisplay 0.2.1
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| PyVirtualDisplay-0.2.1.tar.gz | 30.8 kB | Details |
Release files / PyVirtualDisplay-0.2.1.tar.gz
| Download URL | PyVirtualDisplay-0.2.1.tar.gz |
|---|---|
| Size | 30.8 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
012883851a992f9c53f0dc6a512765a95cf241bdb734af79e6bdfef95c6e9982
|
|
BLAKE2b-256 checksum How to use checksums |
3937f285403a09cc261c56b6574baace1bdcf4b8c7428c8a7239cbba137bc0eb
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |