blake-test-54681681


Nameblake-test-54681681 JSON
Version 2.8.5 PyPI version JSON
download
home_pagehttps://thoughtful.ai
SummaryThoughtful is a python package by Thoughtful for helping manage automations with helpful packages like supervisor
upload_time2024-08-12 18:53:18
maintainerNone
docs_urlNone
authorThoughtful Automation
requires_python<3.12,>=3.8
licenseApache-2.0
keywords rpa robot-framework robocorp automation
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            **thoughtful** is a collection of open-source libraries and tools for Robot Process
Automation (RPA) development. The goal of this project is to provide a set of
for supervising bot execution, and enabling these bots to do more.

[![PyPi version](https://badgen.net/pypi/v/thoughtful/)](https://pypi.org/project/thoughtful/)
![Main Branch Tests](https://github.com/Thoughtful-Automation/supervisor/actions/workflows/main-push.yml/badge.svg?branch=main)
[![Supported Versions](https://img.shields.io/pypi/pyversions/thoughtful.svg)](https://pypi.org/project/thoughtful)
[![Downloads](https://pepy.tech/badge/thoughtful/month)](https://pepy.tech/project/thoughtful)

[//]: # ([![GitHub release]&#40;https://img.shields.io/github/release/Thoughtful-Automation/supervisor.svg&#41;]&#40;https://GitHub.com/Naereen/StrapDown.js/releases/&#41;)


This project is:
* Open-source: [GitHub][url:gh]
* Owned by [thoughtful][url:ta]
* Licensed under the [Apache License 2.0][url:al]

Links:
* [Homepage][url:gh]
* [Documentation][url:readthedocs]
* [PyPI][url:pypi]

**thoughtful** is available on [PyPI][url:pypi] and can be installed using pip:

```sh
pip install thoughtful
```

---

**thoughtful** officially supports Python 3.7+.

---

# Libraries

This is a list of the available libraries in this project. API Reference
and User Guide available on [docs][url:readthedocs].

## Supervisor

Supervisor is a Workflow Engine for Digital Workers that constructs
and broadcasts a detailed and structured telemetric log, called the Run Report.

```python
from thoughtful.supervisor import step, step_scope, supervise, set_step_status


# using the step decorator
@step("2")
def step_2(name: str) -> bool:
    print(f'Hello {name}')
    return True  # some condition

def main() -> None:
    # using the step_scope context manager
    with step_scope('1') as step_context:
        try:
            print("Getting credentials")
            # ...
        except Exception as e:
            # set step status using method
            step_context.set_status("warning")

    if not step_2():
        # set step status using function
        set_step_status("2", "fail")

if __name__ == '__main__':
    with supervise():
        main()
```

## Screen Recorder
The ScreenRecorder library facilitates the recording of screen activity from a
programmatic browser session and generates a video file of the recorded session.

### Prerequisites
Ensure you have already downloaded `FFmpeg` as it is utilized to create the video recording.

https://www.ffmpeg.org/download.html

### Installation
Install the optional `screen-recorder` extras

#### Poetry
```shell
poetry install -E screen-recorder
```

#### Pip
```shell
pip install thoughtful[screen-recorder]
```

### Usage

**WARNING: It is essential that you call `end_recording` at the end of a recording.**

**If you do not call `end_recording`, the recording threads will continue to run until your program ends and a
video will not be created.**

```python
from thoughtful.screen_recorder import ScreenRecorder, BrowserManager
from RPA.Browser.Selenium import Selenium # This dependency must be installed separately

class YoutubeScraper(ScreenRecorder):
    def __init__(self) -> None:
        self._selenium_instance = Selenium()
        super().__init__(browser_manager=BrowserManager(instance=self._selenium_instance))

youtube_scraper = YoutubeScraper()
try:
    # ... Perform actions here ...
finally:
    if youtube_scraper:
        # We recommend calling `end_recording` in a `finally` block to ensure that
        # video processing occurs and all recording threads are terminated even if the Process fails
        youtube_scraper.end_recording()
```

## Contributing

Contributions to **thoughtful** are welcome!

To get started, see the [contributing guide](CONTRIBUTING.md).

---

  Made with ❤️ by

  [![Thoughtful](https://user-images.githubusercontent.com/1096881/141985289-317c2e72-3c2d-4e6b-800a-0def1a05f599.png)][url:ta]

---

This project is open-source and licensed under the terms of the [Apache License 2.0][url:al].


<!--  Link References -->

[url:ta]: https://www.thoughtful.ai/
[url:gh]: https://github.com/Thoughtful-Automation/supervisor
[url:pypi]: https://pypi.org/project/thoughtful/
[git:issues]: https://github.com/Thoughtful-Automation/supervisor/issues
[url:readthedocs]: https://thoughtful-supervisor.readthedocs-hosted.com/en/latest/
[url:al]: http://www.apache.org/licenses/LICENSE-2.0

            

Raw data

            {
    "_id": null,
    "home_page": "https://thoughtful.ai",
    "name": "blake-test-54681681",
    "maintainer": null,
    "docs_url": null,
    "requires_python": "<3.12,>=3.8",
    "maintainer_email": null,
    "keywords": "rpa, robot-framework, robocorp, automation",
    "author": "Thoughtful Automation",
    "author_email": "care@thoughtful.ai",
    "download_url": "https://files.pythonhosted.org/packages/0f/c0/178d0cf4bb2f58c79113ba2f27c36b016ef58e50423878ce6154813c4381/blake_test_54681681-2.8.5.tar.gz",
    "platform": null,
    "description": "**thoughtful** is a collection of open-source libraries and tools for Robot Process\nAutomation (RPA) development. The goal of this project is to provide a set of\nfor supervising bot execution, and enabling these bots to do more.\n\n[![PyPi version](https://badgen.net/pypi/v/thoughtful/)](https://pypi.org/project/thoughtful/)\n![Main Branch Tests](https://github.com/Thoughtful-Automation/supervisor/actions/workflows/main-push.yml/badge.svg?branch=main)\n[![Supported Versions](https://img.shields.io/pypi/pyversions/thoughtful.svg)](https://pypi.org/project/thoughtful)\n[![Downloads](https://pepy.tech/badge/thoughtful/month)](https://pepy.tech/project/thoughtful)\n\n[//]: # ([![GitHub release]&#40;https://img.shields.io/github/release/Thoughtful-Automation/supervisor.svg&#41;]&#40;https://GitHub.com/Naereen/StrapDown.js/releases/&#41;)\n\n\nThis project is:\n* Open-source: [GitHub][url:gh]\n* Owned by [thoughtful][url:ta]\n* Licensed under the [Apache License 2.0][url:al]\n\nLinks:\n* [Homepage][url:gh]\n* [Documentation][url:readthedocs]\n* [PyPI][url:pypi]\n\n**thoughtful** is available on [PyPI][url:pypi] and can be installed using pip:\n\n```sh\npip install thoughtful\n```\n\n---\n\n**thoughtful** officially supports Python 3.7+.\n\n---\n\n# Libraries\n\nThis is a list of the available libraries in this project. API Reference\nand User Guide available on [docs][url:readthedocs].\n\n## Supervisor\n\nSupervisor is a Workflow Engine for Digital Workers that constructs\nand broadcasts a detailed and structured telemetric log, called the Run Report.\n\n```python\nfrom thoughtful.supervisor import step, step_scope, supervise, set_step_status\n\n\n# using the step decorator\n@step(\"2\")\ndef step_2(name: str) -> bool:\n    print(f'Hello {name}')\n    return True  # some condition\n\ndef main() -> None:\n    # using the step_scope context manager\n    with step_scope('1') as step_context:\n        try:\n            print(\"Getting credentials\")\n            # ...\n        except Exception as e:\n            # set step status using method\n            step_context.set_status(\"warning\")\n\n    if not step_2():\n        # set step status using function\n        set_step_status(\"2\", \"fail\")\n\nif __name__ == '__main__':\n    with supervise():\n        main()\n```\n\n## Screen Recorder\nThe ScreenRecorder library facilitates the recording of screen activity from a\nprogrammatic browser session and generates a video file of the recorded session.\n\n### Prerequisites\nEnsure you have already downloaded `FFmpeg` as it is utilized to create the video recording.\n\nhttps://www.ffmpeg.org/download.html\n\n### Installation\nInstall the optional `screen-recorder` extras\n\n#### Poetry\n```shell\npoetry install -E screen-recorder\n```\n\n#### Pip\n```shell\npip install thoughtful[screen-recorder]\n```\n\n### Usage\n\n**WARNING: It is essential that you call `end_recording` at the end of a recording.**\n\n**If you do not call `end_recording`, the recording threads will continue to run until your program ends and a\nvideo will not be created.**\n\n```python\nfrom thoughtful.screen_recorder import ScreenRecorder, BrowserManager\nfrom RPA.Browser.Selenium import Selenium # This dependency must be installed separately\n\nclass YoutubeScraper(ScreenRecorder):\n    def __init__(self) -> None:\n        self._selenium_instance = Selenium()\n        super().__init__(browser_manager=BrowserManager(instance=self._selenium_instance))\n\nyoutube_scraper = YoutubeScraper()\ntry:\n    # ... Perform actions here ...\nfinally:\n    if youtube_scraper:\n        # We recommend calling `end_recording` in a `finally` block to ensure that\n        # video processing occurs and all recording threads are terminated even if the Process fails\n        youtube_scraper.end_recording()\n```\n\n## Contributing\n\nContributions to **thoughtful** are welcome!\n\nTo get started, see the [contributing guide](CONTRIBUTING.md).\n\n---\n\n  Made with \u2764\ufe0f by\n\n  [![Thoughtful](https://user-images.githubusercontent.com/1096881/141985289-317c2e72-3c2d-4e6b-800a-0def1a05f599.png)][url:ta]\n\n---\n\nThis project is open-source and licensed under the terms of the [Apache License 2.0][url:al].\n\n\n<!--  Link References -->\n\n[url:ta]: https://www.thoughtful.ai/\n[url:gh]: https://github.com/Thoughtful-Automation/supervisor\n[url:pypi]: https://pypi.org/project/thoughtful/\n[git:issues]: https://github.com/Thoughtful-Automation/supervisor/issues\n[url:readthedocs]: https://thoughtful-supervisor.readthedocs-hosted.com/en/latest/\n[url:al]: http://www.apache.org/licenses/LICENSE-2.0\n",
    "bugtrack_url": null,
    "license": "Apache-2.0",
    "summary": "Thoughtful is a python package by Thoughtful for helping manage automations with helpful packages like supervisor",
    "version": "2.8.5",
    "project_urls": {
        "Documentation": "https://thoughtful-supervisor.readthedocs-hosted.com/en/latest/index.html",
        "Homepage": "https://thoughtful.ai",
        "Repository": "https://github.com/thoughtful-automation/thoughtful"
    },
    "split_keywords": [
        "rpa",
        " robot-framework",
        " robocorp",
        " automation"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "7e12cfacdd8486b88b1fe32cb1e0c3f34e8b2d0e1db4b1f84943320bb00d91a1",
                "md5": "cb62af21f8813e287a20bd73108b6de8",
                "sha256": "a9c2ad31d6e5e0ee7b01a65d85a8854d28295d24f612861be449e3c769a32be6"
            },
            "downloads": -1,
            "filename": "blake_test_54681681-2.8.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "cb62af21f8813e287a20bd73108b6de8",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": "<3.12,>=3.8",
            "size": 45641,
            "upload_time": "2024-08-12T18:52:29",
            "upload_time_iso_8601": "2024-08-12T18:52:29.103371Z",
            "url": "https://files.pythonhosted.org/packages/7e/12/cfacdd8486b88b1fe32cb1e0c3f34e8b2d0e1db4b1f84943320bb00d91a1/blake_test_54681681-2.8.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "0fc0178d0cf4bb2f58c79113ba2f27c36b016ef58e50423878ce6154813c4381",
                "md5": "ffb05dcb7fc91ee3a55671ac7bef6f1d",
                "sha256": "6bf5443a201c4a5a6fa94aeb3e6ade184bef88a5f6d8c6123f4d8a8b901d9d52"
            },
            "downloads": -1,
            "filename": "blake_test_54681681-2.8.5.tar.gz",
            "has_sig": false,
            "md5_digest": "ffb05dcb7fc91ee3a55671ac7bef6f1d",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": "<3.12,>=3.8",
            "size": 36060,
            "upload_time": "2024-08-12T18:53:18",
            "upload_time_iso_8601": "2024-08-12T18:53:18.058322Z",
            "url": "https://files.pythonhosted.org/packages/0f/c0/178d0cf4bb2f58c79113ba2f27c36b016ef58e50423878ce6154813c4381/blake_test_54681681-2.8.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2024-08-12 18:53:18",
    "github": true,
    "gitlab": false,
    "bitbucket": false,
    "codeberg": false,
    "github_user": "thoughtful-automation",
    "github_project": "thoughtful",
    "github_not_found": true,
    "lcname": "blake-test-54681681"
}
        
Elapsed time: 0.43226s