Skip to content

Repository files navigation

Display Server Interactions

PyPI versionDocumentation StatusDownloadsSupported Python Versions

LicenseGitHub starsGitHub forksGitHub issuesPublish

DSI allows you to perform basic interactions on your display server, like screenshotting a window or sending input to it. Currently, DSI only supports X11/Xorg (GNU/Linux) and Windows but it aims to be cross-platform.

WARNING: Please Do not use DSI in production, because it's currently in development!

Quick overview

Look at the documentation for moor information

Get a window

fromdisplay_server_interactionsimportDSIdsi=DSI()
window=dsi.get_active_window()

Get basic window information

print("Active window: ")
print("\tName: {}".format(window.name))
print("\tPID: {}".format(window.pid))

Take a screenshot of the window

importcv2importnumpyasnpimg=np.array(window.get_image())
cv2.imshow(f'Screenshot of "{window.name}"', img)
whileTrue:
ifcv2.waitKey(1) &0xFF==ord('q'):
break

Sending keys to a window

window.send_str("Hello World")

Move the mouse pointer

window.warp_pointer(x=42, y=73)

Sending mouse clicks

window.send_mouse_click(x=42, y=73)

About

DSI allows you to perform basic interactions on your display server, like screenshotting a window or sending input to it.

Topics

Resources

Stars

1 star

Watchers

1 watching

Forks

Releases

Packages

Contributors

Languages