{ "info": { "author": "Michael Dorman", "author_email": "mjdorma+pyvbox@gmail.com", "bugtrack_url": null, "classifiers": [ "Development Status :: 5 - Production/Stable", "Intended Audience :: Developers", "Intended Audience :: Information Technology", "Intended Audience :: System Administrators", "License :: OSI Approved :: Apache Software License", "Natural Language :: English", "Operating System :: MacOS", "Operating System :: Microsoft", "Operating System :: POSIX", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.4", "Programming Language :: Python :: 3.5", "Programming Language :: Python :: 3.6", "Programming Language :: Python :: 3.7", "Programming Language :: Python :: Implementation :: CPython", "Topic :: Scientific/Engineering :: Visualization", "Topic :: Security", "Topic :: Software Development :: Testing", "Topic :: System :: Clustering", "Topic :: System :: Distributed Computing", "Topic :: System :: Emulators" ], "description": "virtualbox-python\n*****************\n\n.. image:: https://img.shields.io/travis/sethmlarson/virtualbox-python/master.svg\n :target: https://travis-ci.org/sethmlarson/virtualbox-python\n\nComplete implementation of VirtualBox's COM API a Pythoninc interface.\n\nInstallation\n============\n\nGo to VirtualBox's downloads page (https://www.virtualbox.org/wiki/Downloads) and download the VirtualBox SDK.\nWithin the extracted ZIP file there is a directory called \"installer\". Open a console within the installer directory\nand run ``python vboxapisetup.py install`` using your system Python. This installs ``vboxapi`` which is the interface\nthat talks to VirtualBox via COM.\n\nNext is to install this library:\n\nTo get the latest released version of virtualbox from PyPI run the following::\n\n $ python -m pip install virtualbox\n \nor to install the latest development version from GitHub::\n\n $ git clone https://github.com/sethmlarson/virtualbox-python\n $ cd virtualbox-python\n $ python setup.py install\n\nGetting Started \n===============\n\nListing Available Machines\n--------------------------\n\n .. code-block::\n\n >>> import virtualbox\n >>> vbox = virtualbox.VirtualBox()\n >>> [m.name for m in vbox.machines]\n [\"windows\"]\n\nLaunching a Machine\n-------------------\n\n .. code-block::\n\n >>> session = virtualbox.Session()\n >>> machine = vbox.find_machine(\"windows\")\n >>> progress = machine.launch_vm_process(session, \"gui\", \"\")\n >>> progress.wait_for_completion()\n\nQuerying the Machine\n--------------------\n\n .. code-block::\n\n >>> session.state\n SessionState(2) # locked\n >>> machine.state\n MachineState(5) # running\n >>> height, width, _, _, _, _ = session.console.display.get_screen_resolution()\n\nInteracting with the Machine\n----------------------------\n\n .. code-block::\n\n >>> session.console.keyboard.put_keys(\"Hello, world!\")\n >>> guest_session = session.console.guest.create_session(\"Seth Larson\", \"password\")\n >>> guest_session.directory_exists(\"C:\\\\Windows\")\n True\n >>> proc, stdout, stderr = guest_session.execute(\"C:\\\\\\\\Windows\\\\System32\\\\cmd.exe\", [\"/C\", \"tasklist\"])\n >>> print(stdout)\n Image Name PID Session Name Session# Mem Usage\n ========================= ====== ================ ======== ============\n System Idle Process 0 Console 0 28 K\n System 4 Console 0 236 K\n smss.exe 532 Console 0 432 K\n csrss.exe 596 Console 0 3,440 K\n winlogon.exe 620 Console 0 2,380 K\n services.exe 664 Console 0 3,780 K\n lsass.exe 676 Console 0 6,276 K\n VBoxService.exe 856 Console 0 3,972 K\n svchost.exe 900 Console 0 4,908 K\n svchost.exe 1016 Console 0 4,264 K\n svchost.exe 1144 Console 0 18,344 K\n svchost.exe 1268 Console 0 2,992 K\n svchost.exe 1372 Console 0 3,948 K\n spoolsv.exe 1468 Console 0 4,712 K\n svchost.exe 2000 Console 0 3,856 K\n wuauclt.exe 400 Console 0 7,176 K\n alg.exe 1092 Console 0 3,656 K\n wscntfy.exe 1532 Console 0 2,396 K\n explorer.exe 1728 Console 0 14,796 K\n wmiprvse.exe 1832 Console 0 7,096 K\n VBoxTray.exe 1940 Console 0 3,196 K\n ctfmon.exe 1948 Console 0 3,292 K\n cmd.exe 1284 Console 0 2,576 K\n tasklist.exe 124 Console 0 4,584 K\n\nRegistering Event Handlers\n--------------------------\n\n .. code-block::\n\n >>> def test(event):\n >>> print(\"scancode received: %r\" % a.scancodes)\n >>>\n >>> session.console.keyboard.set_on_guest_keyboard(test)\n 140448201250560\n scancode received: [35]\n scancode received: [23]\n scancode received: [163]\n scancode received: [151]\n scancode received: [57]\n\nPowering-Down a Machine\n-----------------------\n\n .. code-block::\n\n >>> session.console.power_down()\n\nLicense\n=======\n\nApache-2.0", "description_content_type": "", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/sethmlarson/virtualbox-python", "keywords": "", "license": "Apache-2.0", "maintainer": "Seth Michael Larson", "maintainer_email": "sethmichaellarson@gmail.com", "name": "virtualbox", "package_url": "https://pypi.org/project/virtualbox/", "platform": "cygwin", "project_url": "https://pypi.org/project/virtualbox/", "project_urls": { "Homepage": "https://github.com/sethmlarson/virtualbox-python" }, "release_url": "https://pypi.org/project/virtualbox/2.0.0/", "requires_dist": null, "requires_python": "", "summary": "Complete implementation of VirtualBox's COM API with a Pythoninc interface", "version": "2.0.0" }, "last_serial": 5081778, "releases": { "2.0.0": [ { "comment_text": "", "digests": { "md5": "a6e11b1634db9ab61a02254cc1d808b6", "sha256": "d7c36908f2026e0d071ffbf398e5c2336f2aba869aaae8498dc0c7830d8acb5b" }, "downloads": -1, "filename": "virtualbox-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a6e11b1634db9ab61a02254cc1d808b6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 250283, "upload_time": "2019-04-03T02:01:31", "url": "https://files.pythonhosted.org/packages/bc/42/9535725559e8d7edae2223e5139a1b0827395e4d734fba6a88ae9d85fe1b/virtualbox-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6834628da6adeb15cc0e29c3215eb521", "sha256": "3ca0f052684eac5bf974da3c726a5d34b2496a95ae3a722e9153ab614c03d382" }, "downloads": -1, "filename": "virtualbox-2.0.0.tar.gz", "has_sig": false, "md5_digest": "6834628da6adeb15cc0e29c3215eb521", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 259561, "upload_time": "2019-04-03T02:01:23", "url": "https://files.pythonhosted.org/packages/c2/d2/f491c944d4654400e2478e85ef9172e63e4ec3ed4ed710f6c655a82053a1/virtualbox-2.0.0.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "a6e11b1634db9ab61a02254cc1d808b6", "sha256": "d7c36908f2026e0d071ffbf398e5c2336f2aba869aaae8498dc0c7830d8acb5b" }, "downloads": -1, "filename": "virtualbox-2.0.0-py2.py3-none-any.whl", "has_sig": false, "md5_digest": "a6e11b1634db9ab61a02254cc1d808b6", "packagetype": "bdist_wheel", "python_version": "py2.py3", "requires_python": null, "size": 250283, "upload_time": "2019-04-03T02:01:31", "url": "https://files.pythonhosted.org/packages/bc/42/9535725559e8d7edae2223e5139a1b0827395e4d734fba6a88ae9d85fe1b/virtualbox-2.0.0-py2.py3-none-any.whl" }, { "comment_text": "", "digests": { "md5": "6834628da6adeb15cc0e29c3215eb521", "sha256": "3ca0f052684eac5bf974da3c726a5d34b2496a95ae3a722e9153ab614c03d382" }, "downloads": -1, "filename": "virtualbox-2.0.0.tar.gz", "has_sig": false, "md5_digest": "6834628da6adeb15cc0e29c3215eb521", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 259561, "upload_time": "2019-04-03T02:01:23", "url": "https://files.pythonhosted.org/packages/c2/d2/f491c944d4654400e2478e85ef9172e63e4ec3ed4ed710f6c655a82053a1/virtualbox-2.0.0.tar.gz" } ] }