Skip to main content

Guibot GH Actions Documentation Status CodeQL codecov

A tool for GUI automation using a variety of computer vision and display control backends.

Introduction and concepts

In order to do GUI automation you usually need to solve two problems: first, you need to have a way to control and interact with the interface and platform you are automating and second, you need to be able to locate the objects you are interested in on the screen. Guibot helps you do both.

To interact with GUIs, Guibot provides the controller module which contains a common interface for different display backends, with methods to move the mouse, take screenshots, type characters and so on. The backend to use will depend on how your platform is accessible, with some backends running directly as native binaries or python scripts on Windows, macOS, and Linux while others connecting through remote VNC displays.

To locate an element on the screen, you will need an image representing the screen, a target representing the element (an image or a text in the simplest cases) and a finder configured for the target. The finder looks for the target within the screenshot image and returns the coordinates to the region where that target appears. Finders, just like display controllers, are wrappers around different backends supported by Guibot that could vary from a simplest 1:1 pixel matching by controller backends, to template or feature matching mix by OpenCV, to OCR and ML solutions by Tesseract and AI frameworks.

Finally, to bridge the gap between controlling the GUI and finding target elements, the region module is provided. It represents a subregion of a screen and contains methods to locate targets in this region using a choice of finder and interact with the graphical interface using a choice of controller.

Supported backends

Supported Computer Vision (CV) backends are based on

  • OpenCV
    • Template matching
    • Contour matching
    • Feature matching
    • Haar cascade matching
    • Template-feature and mixed matching
  • Tesseract OCR
    • Text matching through pytesseract, tesserocr, or OpenCV's bindings
  • PyTorch
    • R-CNN matching through Faster R-CNN or Mask R-CNN
  • autopy
    • AutoPy matching

Supported Display Controller (DC) backends are based on

Further resources

Homepage: http://guibot.org

Documentation: http://guibot.readthedocs.io

Installation: https://github.com/intra2net/guibot/wiki/Packaging

Issue tracking: https://github.com/intra2net/guibot/issues

Project wiki: https://github.com/intra2net/guibot/wiki

Metadata

Release files for guibot 0.51.1

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for guibot 0.51.1
File Size Uploaded
guibot-0.51.1.tar.gz 3.1 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for guibot 0.51.1
File Interpreter ABI Platform
guibot-0.51.1-py3-none-any.whl Python 3 none any Details

Total release size: 89.9 kB

Release files / guibot-0.51.1.tar.gz

Download URL guibot-0.51.1.tar.gz
Size 3.1 kB
Tags Source
SHA-256 checksum
How to use checksums
f9e83f54c09fa69d94f585e45bd61116f90f7f99f729ebacff5061050a6c06da
BLAKE2b-256 checksum
How to use checksums
6daa5d717f4493d556ca530b56b25cd42aa60a913c361f1dc9464b17501826a5
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.11.8

Release files / guibot-0.51.1-py3-none-any.whl

Download URL guibot-0.51.1-py3-none-any.whl
Size 86.8 kB
Tags Python 3
SHA-256 checksum
How to use checksums
c26e9524912190f155be5f3a80314b8af549e43230ea0ba6e5cf32af2af9bae3
BLAKE2b-256 checksum
How to use checksums
e736c1c15a493b17a9990ecc8d66235cc2113517f38cc5e371d7a89a364d48d4
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/5.0.0 CPython/3.11.8

Release history Release notifications | RSS feed

This release

0.51.1 This release

2 release files

0.50.1

2 release files

0.41.1

2 release files

0.40.1

2 release files

0.31.1

2 release files

0.30.1

2 release files

0.21.1

2 release files

0.20.1

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page