{ "info": { "author": "ponty", "author_email": "", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: BSD License", "Natural Language :: English", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7" ], "description": "pyvirtualdisplay is a python wrapper for Xvfb_, Xephyr_ and Xvnc_\n\nLinks:\n * home: https://github.com/ponty/pyvirtualdisplay\n * documentation: http://pyvirtualdisplay.readthedocs.org\n * PYPI: https://pypi.python.org/pypi/pyvirtualdisplay\n\n|Travis| |Coveralls| |Latest Version| |Supported Python versions| |License| |Code Health| |Documentation|\n\nFeatures:\n - python wrapper\n - supported python versions: 2.7, 3.5, 3.6, 3.7\n - back-ends: Xvfb_, Xephyr_, Xvnc_\n\nKnown problems:\n - only a few back-end options are supported\n\nPossible applications:\n * GUI testing\n * automatic GUI screenshot\n\nBasic usages\n============\n\nStart Xephyr::\n\n from pyvirtualdisplay import Display\n xephyr=Display(visible=1, size=(320, 240)).start()\n\nCreate screenshot of xmessage with Xvfb::\n\n from easyprocess import EasyProcess\n from pyvirtualdisplay.smartdisplay import SmartDisplay\n with SmartDisplay(visible=0, bgcolor='black') as disp:\n with EasyProcess('xmessage hello'):\n img = disp.waitgrab()\n img.show()\n\nInstallation\n============\n\nGeneral\n-------\n\n * install Xvfb_ or Xephyr_ or Xvnc_.\n * install pip_\n * optional: pyscreenshot_ and PIL_ should be installed for ``smartdisplay`` submodule\n * install the program::\n\n pip install pyvirtualdisplay\n\nUbuntu 14.04\n------------\n::\n\n sudo apt-get install python-pip\n sudo apt-get install xvfb xserver-xephyr vnc4server\n sudo pip install pyvirtualdisplay\n # optional\n sudo apt-get install python-pil scrot\n sudo pip install pyscreenshot\n # optional for examples\n sudo pip install entrypoint2\n\n\nUninstall\n---------\n\n::\n\n pip uninstall pyvirtualdisplay\n\n\nUsage\n=====\n\n.. #-- from docs.screenshot import screenshot--# \n.. #-#\n\nGUI Test\n--------\n\nTesting ``gnumeric`` on low resolution::\n\n #-- include('examples/lowres.py') --#\n from easyprocess import EasyProcess\n from pyvirtualdisplay import Display\n\n if __name__ == \"__main__\":\n # start Xephyr\n Display(visible=1, size=(320, 240)).start()\n # start Gnumeric\n EasyProcess('gnumeric').start()\n #-#\n\nImage:\n\n.. #-- screenshot('python -m pyvirtualdisplay.examples.lowres','lowres.png') --#\n.. image:: _img/lowres.png\n.. #-#\n\nScreenshot\n----------\n\nCreate screenshot of ``xmessage`` in background::\n\n #-- include('examples/screenshot3.py') --#\n '''\n using :keyword:`with` statement\n '''\n from easyprocess import EasyProcess\n from pyvirtualdisplay.smartdisplay import SmartDisplay\n\n if __name__ == \"__main__\":\n with SmartDisplay(visible=0, bgcolor='black') as disp:\n with EasyProcess('xmessage hello'):\n img = disp.waitgrab()\n\n\n img.show()\n #-#\n\n\nImage:\n\n.. #-- screenshot('python -m pyvirtualdisplay.examples.screenshot3','screenshot3.png') --#\n.. image:: _img/screenshot3.png\n.. #-#\n\nvncserver\n---------\n\n::\n\n #-- include('examples/vncserver.py') --#\n '''\n Example for Xvnc backend\n '''\n\n from easyprocess import EasyProcess\n from pyvirtualdisplay.display import Display\n\n if __name__ == \"__main__\":\n with Display(backend='xvnc', rfbport=5904) as disp:\n with EasyProcess('xmessage hello') as proc:\n proc.wait()\n #-#\n\nxauth\n=====\n\nSome programs require a functional Xauthority file. PyVirtualDisplay can\ngenerate one and set the appropriate environment variables if you pass\n``use_xauth=True`` to the ``Display`` constructor. Note however that this\nfeature needs ``xauth`` installed, otherwise a\n``pyvirtualdisplay.xauth.NotFoundError`` is raised.\n\n\n.. _pip: http://pip.openplans.org/\n.. _Xvfb: http://en.wikipedia.org/wiki/Xvfb\n.. _Xephyr: http://en.wikipedia.org/wiki/Xephyr\n.. _pyscreenshot: https://github.com/ponty/pyscreenshot\n.. _PIL: http://www.pythonware.com/library/pil/\n.. _Xvnc: http://www.hep.phy.cam.ac.uk/vnc_docs/xvnc.html\n\n\n.. |Travis| image:: http://img.shields.io/travis/ponty/PyVirtualDisplay.svg\n :target: https://travis-ci.org/ponty/PyVirtualDisplay/\n.. |Coveralls| image:: http://img.shields.io/coveralls/ponty/PyVirtualDisplay/master.svg\n :target: https://coveralls.io/r/ponty/PyVirtualDisplay/\n.. |Latest Version| image:: https://img.shields.io/pypi/v/PyVirtualDisplay.svg\n :target: https://pypi.python.org/pypi/PyVirtualDisplay/\n.. |Supported Python versions| image:: https://img.shields.io/pypi/pyversions/PyVirtualDisplay.svg\n :target: https://pypi.python.org/pypi/PyVirtualDisplay/\n.. |License| image:: https://img.shields.io/pypi/l/PyVirtualDisplay.svg\n :target: https://pypi.python.org/pypi/PyVirtualDisplay/\n.. |Code Health| image:: https://landscape.io/github/ponty/PyVirtualDisplay/master/landscape.svg?style=flat\n :target: https://landscape.io/github/ponty/PyVirtualDisplay/master\n.. |Documentation| image:: https://readthedocs.org/projects/pyvirtualdisplay/badge/?version=latest\n :target: http://pyvirtualdisplay.readthedocs.org\n\n\n", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/ponty/pyvirtualdisplay", "keywords": "Xvfb Xephyr X wrapper", "license": "BSD", "maintainer": "", "maintainer_email": "", "name": "PyVirtualDisplay", "package_url": "https://pypi.org/project/PyVirtualDisplay/", "platform": "", "project_url": "https://pypi.org/project/PyVirtualDisplay/", "project_urls": { "Homepage": "https://github.com/ponty/pyvirtualdisplay" }, "release_url": "https://pypi.org/project/PyVirtualDisplay/0.2.4/", "requires_dist": [ "EasyProcess" ], "requires_python": "", "summary": "python wrapper for Xvfb, Xephyr and Xvnc", "version": "0.2.4" }, "last_serial": 5437790, "releases": { "0.0.0": [ { "comment_text": "", "digests": { "md5": "aaa3ccbc7850ffe1dc35f0a24b32615b", "sha256": "1d4d9df68501d75ecbb04518a2fb2e424386246a5a263ceb04541c181785239c" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.0.tar.gz", "has_sig": false, "md5_digest": "aaa3ccbc7850ffe1dc35f0a24b32615b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31037, "upload_time": "2011-02-11T13:09:12", "url": "https://files.pythonhosted.org/packages/6a/66/b91c2e5601123327a3f44eb518b3dbf6084763ab7ac9c752bd8475f25737/PyVirtualDisplay-0.0.0.tar.gz" } ], "0.0.1": [ { "comment_text": "", "digests": { "md5": "db1927738ec5e276ac4a38561284839d", "sha256": "09ad2f190d7a3a7db423105de6fbb95b082366f4302d941a21a9e5299b1dab89" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.1.tar.gz", "has_sig": false, "md5_digest": "db1927738ec5e276ac4a38561284839d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 31307, "upload_time": "2011-02-12T16:10:15", "url": "https://files.pythonhosted.org/packages/81/87/cf92da1a1282061d3d4bfc46fe081e2a0840c85fc1e28b7f48c3102d59b0/PyVirtualDisplay-0.0.1.tar.gz" } ], "0.0.2": [ { "comment_text": "", "digests": { "md5": "b8bf617223084a4d268e53add7ee6130", "sha256": "a00c16a645428ab4c5ee2a51b2df49deffec8354280bb68ab24c1d55d3b58be6" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.2.tar.gz", "has_sig": false, "md5_digest": "b8bf617223084a4d268e53add7ee6130", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32541, "upload_time": "2011-02-23T18:17:27", "url": "https://files.pythonhosted.org/packages/2c/92/90ed64fb4b8af2f5b6c4f15da11d0121e4476eb97dc49840260eb91ef65a/PyVirtualDisplay-0.0.2.tar.gz" } ], "0.0.3": [ { "comment_text": "", "digests": { "md5": "b2a7ff035921abfcc26f895f2f3e2639", "sha256": "37a00c06858db26d5d3d84bd9dc1947bd822e509510b9819cd8dcf75abd82e65" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.3.tar.gz", "has_sig": false, "md5_digest": "b2a7ff035921abfcc26f895f2f3e2639", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 36819, "upload_time": "2011-04-22T20:15:09", "url": "https://files.pythonhosted.org/packages/62/a4/8eddfa9f4cf717299929ed4ed09401a51fa86af06650946f8f2f94ade1f7/PyVirtualDisplay-0.0.3.tar.gz" } ], "0.0.5": [ { "comment_text": "", "digests": { "md5": "e48866eabab935b4a7e65b02eb9d6c99", "sha256": "d8ced7753ded8f99dcfddbef877b74503aad8fdb2661575872eff4ef752f13a9" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.5.tar.gz", "has_sig": false, "md5_digest": "e48866eabab935b4a7e65b02eb9d6c99", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37032, "upload_time": "2011-07-08T18:03:54", "url": "https://files.pythonhosted.org/packages/b3/90/2623602896fdd4ae763adae328facf88d4903fefd8fb902212dd3cc3de77/PyVirtualDisplay-0.0.5.tar.gz" } ], "0.0.6": [ { "comment_text": "", "digests": { "md5": "e33865c2e8ec94b7af0c7cefd119f9a3", "sha256": "ef9deb8a6855eb606099f157f051079c5e448dd66d4e71792f757a90162e53b4" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.6.tar.gz", "has_sig": false, "md5_digest": "e33865c2e8ec94b7af0c7cefd119f9a3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37088, "upload_time": "2011-07-13T18:08:16", "url": "https://files.pythonhosted.org/packages/ed/18/6c6e9f7f5f02959b681eac658b5c9dfe4f0297f4bcdb6fb943cb6ff5dcbd/PyVirtualDisplay-0.0.6.tar.gz" } ], "0.0.7": [ { "comment_text": "", "digests": { "md5": "6f54110ca2b876539a79b4d2703cf150", "sha256": "eda83ebf18e1dbf76ec69aba44d30fe161fc78ca993c406e420c7efcab9c33e3" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.7.tar.gz", "has_sig": false, "md5_digest": "6f54110ca2b876539a79b4d2703cf150", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 37886, "upload_time": "2011-08-10T18:45:19", "url": "https://files.pythonhosted.org/packages/3e/cd/153bd4b147e33e95e786a8abe0c92876fed7f0f748faa1cc759542404608/PyVirtualDisplay-0.0.7.tar.gz" } ], "0.0.8": [ { "comment_text": "", "digests": { "md5": "ee51f82c417471bcddbdfb1719f7793e", "sha256": "b1dbafffd7b2e8172c46e0733e21c149995ea5ab7a8b76df66355d6e232e484b" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.8.tar.gz", "has_sig": false, "md5_digest": "ee51f82c417471bcddbdfb1719f7793e", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38612, "upload_time": "2012-01-26T20:24:23", "url": "https://files.pythonhosted.org/packages/79/ec/9109a56cbb1965e22b9c243285a66b8bf1e2a18611f84906ed8ee8512f3b/PyVirtualDisplay-0.0.8.tar.gz" } ], "0.0.9": [ { "comment_text": "", "digests": { "md5": "e437b804486a4a433fc978f977203a90", "sha256": "95441c04261cc71185052d01e22376ba3034c1dd207efb0cf7bd11c7587ea136" }, "downloads": -1, "filename": "PyVirtualDisplay-0.0.9.tar.gz", "has_sig": false, "md5_digest": "e437b804486a4a433fc978f977203a90", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 38237, "upload_time": "2012-02-05T22:15:40", "url": "https://files.pythonhosted.org/packages/a9/50/7b495fb23f029516902dd1a79e08000f86a77af9a67fde8ce4283111628d/PyVirtualDisplay-0.0.9.tar.gz" } ], "0.1.0": [ { "comment_text": "", "digests": { "md5": "5b98c5f9396d63d995964c48bab5bffd", "sha256": "15d1baf3f20030bcc44ac876182ba6e259a39f6dad1e7b6922513809cdd4bf98" }, "downloads": -1, "filename": "PyVirtualDisplay-0.1.0.tar.gz", "has_sig": false, "md5_digest": "5b98c5f9396d63d995964c48bab5bffd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9261, "upload_time": "2012-03-10T19:11:25", "url": "https://files.pythonhosted.org/packages/7e/e1/05d6b693671944c0b563a9135b3aa2488530f46a3befefc145b0d26eed45/PyVirtualDisplay-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "eee08cbfb959513bc5c376dbef13048b", "sha256": "59630f194dbba072ce425e6c7c45d7d841b923fac4d45dce9c9e726cea77f59b" }, "downloads": -1, "filename": "PyVirtualDisplay-0.1.1.tar.gz", "has_sig": false, "md5_digest": "eee08cbfb959513bc5c376dbef13048b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9579, "upload_time": "2012-12-02T17:19:39", "url": "https://files.pythonhosted.org/packages/b3/14/14e725fff25c705627ff3082f1dbe82541b386a7dc8c57b6cf2519701131/PyVirtualDisplay-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "82be357c693a4350be4bd7054c1a3c73", "sha256": "3ee8af613be9d89c5b3f0d8dfe792910c85839dba73171131eeeea3e56f18577" }, "downloads": -1, "filename": "PyVirtualDisplay-0.1.2.tar.gz", "has_sig": false, "md5_digest": "82be357c693a4350be4bd7054c1a3c73", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9448, "upload_time": "2013-02-16T17:40:18", "url": "https://files.pythonhosted.org/packages/bb/4e/b1541040fe8a82404505ac0a999abe6dfe9003d0840874c8c6acdebb23c7/PyVirtualDisplay-0.1.2.tar.gz" } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "e3315d0dccfd989bf5a6b68bd8f1d5b7", "sha256": "7fbd6ef1758ae066c12d03e30a15948d6369a230fd6ffd3e014c20450ac39543" }, "downloads": -1, "filename": "PyVirtualDisplay-0.1.3.tar.gz", "has_sig": false, "md5_digest": "e3315d0dccfd989bf5a6b68bd8f1d5b7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9431, "upload_time": "2014-02-28T16:15:44", "url": "https://files.pythonhosted.org/packages/69/ce/33d7af7bca77bc56756e74ea36cb221de88c46398e7b7d30666e1d78bd6b/PyVirtualDisplay-0.1.3.tar.gz" } ], "0.1.5": [ { "comment_text": "", "digests": { "md5": "90b65fe15b81788c2e208d124e3a3c14", "sha256": "aa6aef08995e14c20cc670d933bfa6e70d736d0b555af309b2e989e2faa9ee53" }, "downloads": -1, "filename": "PyVirtualDisplay-0.1.5.tar.gz", "has_sig": false, "md5_digest": "90b65fe15b81788c2e208d124e3a3c14", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 18272, "upload_time": "2014-04-11T15:16:53", "url": "https://files.pythonhosted.org/packages/e6/f0/69a401cffb5ce7b5f03890404bf541869c0db64084cf916d260d175c7414/PyVirtualDisplay-0.1.5.tar.gz" } ], "0.2": [ { "comment_text": "", "digests": { "md5": "e3960707a33f3029a5b9c80249d8aad7", "sha256": "8bf0827b04487b6b9ad8490b03254c03948ca7f23bb1de420637b2c09e59ed84" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.tar.gz", "has_sig": false, "md5_digest": "e3960707a33f3029a5b9c80249d8aad7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 29649, "upload_time": "2016-03-04T05:57:53", "url": "https://files.pythonhosted.org/packages/ce/df/9ab299661784d36e1da9f025d904e96a9a223813be97970277cbb1ca1a04/PyVirtualDisplay-0.2.tar.gz" } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "a499eda2fc5de6e57d6ea11b397d5835", "sha256": "012883851a992f9c53f0dc6a512765a95cf241bdb734af79e6bdfef95c6e9982" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.1.tar.gz", "has_sig": false, "md5_digest": "a499eda2fc5de6e57d6ea11b397d5835", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 30785, "upload_time": "2016-10-03T17:10:33", "url": "https://files.pythonhosted.org/packages/39/37/f285403a09cc261c56b6574baace1bdcf4b8c7428c8a7239cbba137bc0eb/PyVirtualDisplay-0.2.1.tar.gz" } ], "0.2.3": [ { "comment_text": "", "digests": { "md5": "ca2f5d1217a453aec0cbfd1f0025d2a5", "sha256": "4525385a161fed836438dc57337ed428fd9c45396542a044c885b048c1c424a6" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.3-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "ca2f5d1217a453aec0cbfd1f0025d2a5", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15329, "upload_time": "2019-05-26T18:58:30", "url": "https://files.pythonhosted.org/packages/68/6b/4bc5678b5219edba7190ae45a7e3d02b03dc7d20ffae84047c7494b355c3/PyVirtualDisplay-0.2.3-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "cf21f1a08f974f6cee5c9310fa95bfc8", "sha256": "658d03ea2d6727cbe70c30af71e9014d3d39114a3c50bd661b75aad188fdd3aa" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.3.tar.gz", "has_sig": false, "md5_digest": "cf21f1a08f974f6cee5c9310fa95bfc8", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32514, "upload_time": "2019-05-26T18:58:32", "url": "https://files.pythonhosted.org/packages/bb/bf/599964d05464400b5a0b1dc69c3b2c93b85902e5fc31758ead0ec169b058/PyVirtualDisplay-0.2.3.tar.gz" } ], "0.2.4": [ { "comment_text": "", "digests": { "md5": "c6dcac0f4a6f6e5917e71c30364284af", "sha256": "877f9ac9b8344d4bb8f6f4ec0db78db5dabb8f1240b692989e40a330d6fadd6e" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c6dcac0f4a6f6e5917e71c30364284af", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15269, "upload_time": "2019-06-23T16:54:09", "url": "https://files.pythonhosted.org/packages/cf/ad/b15f252bfb0f1693ad3150b55a44a674f3cba711cacdbb9ae2f03f143d19/PyVirtualDisplay-0.2.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0ecdca44fb7bee4497a715efd47c9852", "sha256": "07f50759205adaeeb255a88be0ac1dce68da80686e6ca1fc362f4aa54fdbcb5b" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.4.tar.gz", "has_sig": false, "md5_digest": "0ecdca44fb7bee4497a715efd47c9852", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32456, "upload_time": "2019-06-23T16:54:11", "url": "https://files.pythonhosted.org/packages/3f/70/d0672122363f70b8fd29aeabd0b90a947b08c104e9b6cefd2ae6719ec2bc/PyVirtualDisplay-0.2.4.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "c6dcac0f4a6f6e5917e71c30364284af", "sha256": "877f9ac9b8344d4bb8f6f4ec0db78db5dabb8f1240b692989e40a330d6fadd6e" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.4-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "c6dcac0f4a6f6e5917e71c30364284af", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 15269, "upload_time": "2019-06-23T16:54:09", "url": "https://files.pythonhosted.org/packages/cf/ad/b15f252bfb0f1693ad3150b55a44a674f3cba711cacdbb9ae2f03f143d19/PyVirtualDisplay-0.2.4-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "0ecdca44fb7bee4497a715efd47c9852", "sha256": "07f50759205adaeeb255a88be0ac1dce68da80686e6ca1fc362f4aa54fdbcb5b" }, "downloads": -1, "filename": "PyVirtualDisplay-0.2.4.tar.gz", "has_sig": false, "md5_digest": "0ecdca44fb7bee4497a715efd47c9852", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 32456, "upload_time": "2019-06-23T16:54:11", "url": "https://files.pythonhosted.org/packages/3f/70/d0672122363f70b8fd29aeabd0b90a947b08c104e9b6cefd2ae6719ec2bc/PyVirtualDisplay-0.2.4.tar.gz" } ] }