Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commandcracker/display-server-interactions

Repository files navigation

Display Server Interactions

PyPI version Documentation Status Downloads Supported Python Versions

License GitHub stars GitHub forks GitHub issues Publish

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

from display_server_interactions import DSI
dsi = 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

import cv2
import numpy as np
img = np.array(window.get_image())
cv2.imshow(f'Screenshot of "{window.name}"', img)
while True:
 if cv2.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

License

Stars

Watchers

Forks

Packages

Contributors

AltStyle によって変換されたページ (->オリジナル) /