robocorp-windows


Namerobocorp-windows JSON
Version 1.0.4 PyPI version JSON
download
home_pagehttps://github.com/robocorp/robocorp/
SummaryRobocorp Windows Automation (API to automate Windows)
upload_time2024-09-26 13:12:42
maintainerNone
docs_urlNone
authorFabio Z.
requires_python<4.0,>=3.9
licenseApache-2.0
keywords
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            # robocorp-windows

The **robocop-windows** package brings a library that can be used for Windows desktop automation.

The basic idea of the library is to enable windows and controls to be found by leveraging "locators" (strings that identify how to reach some window or control), then interacting with such elements.

There are three fundamental abstractions in the library:

- `Desktop`: enables finding `WindowElement`s and interacting directly with the desktop, like opening or closing apps. These actions aren't tied to a specific _Window_ or _Control_.
- `WindowElement`: enables finding direct `ControlElement`s and interacting with a specific _Window_.
- `ControlElement`: enables finding child `ControlElement`s and interacting with a specific _Control_.

> Note: The library itself always creates these classes which are not expected to be subclassed or instanced directly.

## Usage

[![`robocorp-windows`](https://img.shields.io/pypi/v/robocorp-windows?label=robocorp-windows)](https://pypi.org/project/robocorp-windows/)

> 👉 Check that you have added the dependency in your configuration; this library is not part of the [**robocorp**](https://pypi.org/project/robocorp/) bundle.
> - _conda.yaml_ for automation [Task Packages](https://robocorp.com/docs/robot-structure)
> - _package.yaml_ for automation Action Packages
> - _requirements.txt_, _pyproject.toml_, _setup.py|cfg_ etc. for the rest

The library concepts revolve around the idea that the window of interest will be initially found using `find_window` and then, with that window reference, other controls can be queried and interacted with (for clicking, entering text etc.).

Below is an example using the Windows' Calculator app:

```python
from robocorp import windows

# Get the Calculator window.
calc = windows.find_window("name:Calculator")

# Press button "0" (the locator may vary based on the Windows version).
button0 = calc.find("(name:0 or name:num0Button) and type:Button")
button0.click()

# Clear the Calculator (the locator may vary based on the Windows version).
calc.click("id:clearEntryButton or name:Clear")

# Send the keys directly to the Calculator by typing them from the keyboard.
calc.send_keys(keys="96+4=")
```

## Guides

- [Quickstart](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/00-quickstart.md)
- [Understanding Locators](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/01-locators.md)
- [Building Locators using the builtin inspector](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/02-locator-inspecting.md)
- [Special keys](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/03-special-keys.md)

## API Reference

Explore our [API](https://github.com/robocorp/robocorp/blob/master/windows/docs/api/README.md) for extensive documentation.

## Changelog

A list of releases and corresponding changes can be found in the [changelog](https://github.com/robocorp/robocorp/blob/master/windows/docs/CHANGELOG.md).

            

Raw data

            {
    "_id": null,
    "home_page": "https://github.com/robocorp/robocorp/",
    "name": "robocorp-windows",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<4.0,>=3.9",
    "maintainer_email": null,
    "keywords": null,
    "author": "Fabio Z.",
    "author_email": "fabio@robocorp.com",
    "download_url": "https://files.pythonhosted.org/packages/e4/83/32fe5ea64d76ca177b13168187b470d0b0f7901b4b2be4e1985b71792ee0/robocorp_windows-1.0.4.tar.gz",
    "platform": null,
    "description": "# robocorp-windows\n\nThe **robocop-windows** package brings a library that can be used for Windows desktop automation.\n\nThe basic idea of the library is to enable windows and controls to be found by leveraging \"locators\" (strings that identify how to reach some window or control), then interacting with such elements.\n\nThere are three fundamental abstractions in the library:\n\n- `Desktop`: enables finding `WindowElement`s and interacting directly with the desktop, like opening or closing apps. These actions aren't tied to a specific _Window_ or _Control_.\n- `WindowElement`: enables finding direct `ControlElement`s and interacting with a specific _Window_.\n- `ControlElement`: enables finding child `ControlElement`s and interacting with a specific _Control_.\n\n> Note: The library itself always creates these classes which are not expected to be subclassed or instanced directly.\n\n## Usage\n\n[![`robocorp-windows`](https://img.shields.io/pypi/v/robocorp-windows?label=robocorp-windows)](https://pypi.org/project/robocorp-windows/)\n\n> \ud83d\udc49 Check that you have added the dependency in your configuration; this library is not part of the [**robocorp**](https://pypi.org/project/robocorp/) bundle.\n> - _conda.yaml_ for automation [Task Packages](https://robocorp.com/docs/robot-structure)\n> - _package.yaml_ for automation Action Packages\n> - _requirements.txt_, _pyproject.toml_, _setup.py|cfg_ etc. for the rest\n\nThe library concepts revolve around the idea that the window of interest will be initially found using `find_window` and then, with that window reference, other controls can be queried and interacted with (for clicking, entering text etc.).\n\nBelow is an example using the Windows' Calculator app:\n\n```python\nfrom robocorp import windows\n\n# Get the Calculator window.\ncalc = windows.find_window(\"name:Calculator\")\n\n# Press button \"0\" (the locator may vary based on the Windows version).\nbutton0 = calc.find(\"(name:0 or name:num0Button) and type:Button\")\nbutton0.click()\n\n# Clear the Calculator (the locator may vary based on the Windows version).\ncalc.click(\"id:clearEntryButton or name:Clear\")\n\n# Send the keys directly to the Calculator by typing them from the keyboard.\ncalc.send_keys(keys=\"96+4=\")\n```\n\n## Guides\n\n- [Quickstart](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/00-quickstart.md)\n- [Understanding Locators](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/01-locators.md)\n- [Building Locators using the builtin inspector](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/02-locator-inspecting.md)\n- [Special keys](https://github.com/robocorp/robocorp/blob/master/windows/docs/guides/03-special-keys.md)\n\n## API Reference\n\nExplore our [API](https://github.com/robocorp/robocorp/blob/master/windows/docs/api/README.md) for extensive documentation.\n\n## Changelog\n\nA list of releases and corresponding changes can be found in the [changelog](https://github.com/robocorp/robocorp/blob/master/windows/docs/CHANGELOG.md).\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Robocorp Windows Automation (API to automate Windows)",
    "version": "1.0.4",
    "project_urls": {
        "Homepage": "https://github.com/robocorp/robocorp/",
        "Repository": "https://github.com/robocorp/robocorp/"
    },
    "split_keywords": [],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "a4170464eed752b41839f0af1708f3efe45fc703c58f9da26f548d344d62f32b",
                "md5": "eceec7e794ba5044edaf9db92c4f366a",
                "sha256": "0efa6547ea78bcb55375eb1ec35c6af2a7345fb0fed1cf93d2a2e6aab71c65b7"
            },
            "downloads": -1,
            "filename": "robocorp_windows-1.0.4-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "eceec7e794ba5044edaf9db92c4f366a",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<4.0,>=3.9",
            "size": 211503,
            "upload_time": "2024-09-26T13:12:41",
            "upload_time_iso_8601": "2024-09-26T13:12:41.181375Z",
            "url": "https://files.pythonhosted.org/packages/a4/17/0464eed752b41839f0af1708f3efe45fc703c58f9da26f548d344d62f32b/robocorp_windows-1.0.4-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "e48332fe5ea64d76ca177b13168187b470d0b0f7901b4b2be4e1985b71792ee0",
                "md5": "8f26295c571410d30cd3adcd0e21f393",
                "sha256": "b4aa09d6b92740c4ac0646db9bffcc50cd90f5d8681da42d1ee56fe35ded7c55"
            },
            "downloads": -1,
            "filename": "robocorp_windows-1.0.4.tar.gz",
            "has_sig": false,
            "md5_digest": "8f26295c571410d30cd3adcd0e21f393",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<4.0,>=3.9",
            "size": 203038,
            "upload_time": "2024-09-26T13:12:42",
            "upload_time_iso_8601": "2024-09-26T13:12:42.372683Z",
            "url": "https://files.pythonhosted.org/packages/e4/83/32fe5ea64d76ca177b13168187b470d0b0f7901b4b2be4e1985b71792ee0/robocorp_windows-1.0.4.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-09-26 13:12:42",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "robocorp",
    "github_project": "robocorp",
    "travis_ci": false,
    "coveralls": false,
    "github_actions": true,
    "lcname": "robocorp-windows"
}
        
Elapsed time: 0.51965s