Skip to main content

Simple client library to work with VirtualBox remotely

Project description

Remote VirtualBox

Build Status Black Indicator

About

This package is intended to be simple and useful abstraction based on Zeep SOAP client.

It doesn’t depend on ancient VirtualBox Python SDK and even more ancient ZSI (last updated in 2006) and PyXML (thing from 2007) libraries.

The initial goal was to build an easy to use CuckooSandbox machinery.

VirtualBox Webservice

There is an official manual how to start it:

https://www.virtualbox.org/manual/ch09.html#vboxwebsrv-daemon

Install

pip install remotevbox --user

Development version

Pipenv is used here:

pipenv install --dev --pre
pipenv shell

Usage example

>>> import remotevbox
>>> vbox = remotevbox.connect("http://127.0.0.1:18083", "vbox", "yourpassphrase")
>>> vbox.get_version()
'6.1.2'
>>> machine = vbox.get_machine("Windows10")
>>> machine.launch()
>>> screenshot_data = machine.take_screenshot_to_bytes()
>>> fp = open('screenshot.png', 'wb')
>>> fp.write(screenshot_data)
>>> fp.close()
>>> machine.put_usagecode(0xE1, 7) # simulate shift key
>>> machine.put_usagecode(6, 7) # simulate letter c
>>> machine.put_usagecode(6, 7, True) # stop "pressing" c
>>> machine.put_usagecode(0xE1, 7, True) # stop "pressing" shift
>>> machine.put_mouse_event(0, 0, dz=5) # scroll with the mouse wheel
>>> machine.absolute_mouse_pointer_supported() # does the gues OS supports absolute mouse pointer ?
>>> machine.put_mouse_event_absolute(110, 40) # set absolute cursor position
>>> machine.send_key_combination(["<ctrl>", "c"]) # send key combination
>>> machine.send_character_string("Hello World!") # send a string from the keyboard
>>> machine.save()
>>> vbox.disconnect()

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

remotevbox-1.0.1.tar.gz (11.8 kB view details)

Uploaded Source

File details

Details for the file remotevbox-1.0.1.tar.gz.

File metadata

  • Download URL: remotevbox-1.0.1.tar.gz
  • Upload date:
  • Size: 11.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/3.2.0 pkginfo/1.6.0 requests/2.24.0 setuptools/50.3.2 requests-toolbelt/0.9.1 tqdm/4.50.2 CPython/3.6.7

File hashes

Hashes for remotevbox-1.0.1.tar.gz
Algorithm Hash digest
SHA256 88b58b6899c47c856179ab5159aa1222fa0ce7b448564faf2f957d9610928981
MD5 6f2d1c3aa6f1c30265512162b9ff1b39
BLAKE2b-256 ac63195d5ca7641f21b8c7359297e3bb77f431443a8087bb05b794d2ad33a3d9

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page