This project contains useful tools to work with Automation Anywhere + Python
Project description
aa-pytools
All Python tools you'll likely need to work with Automation Anywhere
aa-pytools is a comprehensive Python library designed to streamline integration between Python applications and Automation Anywhere RPA platform. It provides essential tools, decorators, and utilities that make RPA development more efficient and reliable.
๐ Features
Core Functionality
- Advanced Logging System - Centralized, configurable logging with auto-configuration
- Safe Execution Decorator - Error handling with structured payloads and timing information
Automation Anywhere Integration
- Vault Credential Management - Secure credential fetching from Automation Anywhere vault
- Execution Management - Run and monitor Automation Anywhere executions from Python
- REST API Integration - Complete API client for Automation Anywhere services
Specialized Decorators
-
@safe_execute- Execute functions safely with comprehensive error handling -
@with_vault("SAP")- Automatic credential injection from vault -
@retry_on_failure- Intelligent retry mechanism for transient failures -
@timeout(30)- Execution timeout protection -
@transactional- Transaction management for complex operations -
@queue_worker("INVOICES")- Queue-based processing capabilities -
@aa_safe_run- Automation Anywhere-specific safe execution
๐ฆ Installation
pip install aa-pytools
Requirements:
- Python 3.13 or higher
- No external dependencies for core functionality
๐ฏ Quick Start
Basic Usage
from aa_pytools.decorators import safe_execute
from aa_pytools.core import get_logger
# Use the safe execution decorator
@safe_execute
def risky_operation(data):
# Your code here
return process_data(data)
result = risky_operation(my_data)
if result["status"]:
print(f"Success: {result['result']}")
else:
print(f"Error: {result['error']}")
# Logging with auto-configuration
logger = get_logger("my_module")
logger.info("This message will be automatically formatted and handled")
Advanced Logging
from aa_pytools.core import configure_logging, get_logger
from pathlib import Path
# Configure custom logging
configure_logging(
level="DEBUG",
log_file=Path("logs/app.log"),
console=True,
format_string="%(asctime)s | %(name)s | %(levelname)s | %(message)s"
)
logger = get_logger("my_component")
logger.debug("Detailed debugging information")
๐ Documentation
Core Components
Logging System (aa_pytools.core)
- Auto-configuring loggers
- Flexible formatting options
- Console and file output
- Package-scoped logging hierarchy
Safe Execution (aa_pytools.decorators.safe_execute)
- Exception catching and structured error reporting
- Performance timing information
- Optional trace information for debugging
- JSON or dictionary return formats
API Reference
Detailed API documentation is available at https://aa-pytools.readthedocs.io (coming soon).
๐งช Development Status
This project is currently in early development (version 0.0.1).
Implemented:
- โ Core logging system with full configuration options
- โ Safe execution decorator with comprehensive error handling
- โ Complete test coverage for implemented features
- โ Modern Python packaging with uv and pyproject.toml
In Progress:
- ๐ Vault integration for credential management
- ๐ REST API client for Automation Anywhere
- ๐ Execution management system
- ๐ Additional specialized decorators
๐ค Contributing
We welcome contributions! Please see our Contributing Guide for detailed information on:
- Setting up the development environment
- Running tests and linting
- Making pull requests
- Code style and standards
๐ License
This project is licensed under the MIT License - see the LICENSE file for details.
๐ Acknowledgments
Inspired by and built upon concepts from:
rpa-automationanywhere- Last update: June 5, 2025automation-anywhere- Last update: August 8, 2023
๐ Support
- ๐ง Email: devaul.fs@gmail.com
- ๐ Issues: GitHub Issues
- ๐ฌ Discussions: GitHub Discussions
Created by @AND3SIL4 at Net Applications
แด
แดแด แดสแดแดแดแด
สส:
โโโโโโ โโโ โโ โโโโโ โโโโโ โโโโโโ โโ โโ โโ โโ
โโโโโโ โโ โโโโ โโ โโ โโโโ โโโโโโ โโ โโ โโโโโโ
โโ โโ โโ โโ โโโโโ โโโโโ โโโโโโ โโ โโโโโโ โโ
ษช แดสษชษดแด, แดสแดสแด๊ฐแดสแด ษช แดแด ๐ฟ
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file aa_pytools-1.0.0.tar.gz.
File metadata
- Download URL: aa_pytools-1.0.0.tar.gz
- Upload date:
- Size: 10.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0e8857ea4900fc469f4fde0d6b4e4a94b87a7144ce4265bb7f8549d02298efe0
|
|
| MD5 |
80b2d7a05d3e0145de99f09e18f6fcb4
|
|
| BLAKE2b-256 |
a278555b470e9a2d7c7651e8fbab71cf17639466053350b5e991c2eb88f21dc3
|
File details
Details for the file aa_pytools-1.0.0-py3-none-any.whl.
File metadata
- Download URL: aa_pytools-1.0.0-py3-none-any.whl
- Upload date:
- Size: 8.9 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.13.11
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
10da7add5d96e40bef46c1ce63e258d10a6fa1e868059067f2546d0d00a52aee
|
|
| MD5 |
034db672fc637345cf9a80a16913064a
|
|
| BLAKE2b-256 |
6f9ef18fcb9814ac2cf6d490a5464c0835a854fbd654cce1adcc880f45a0db38
|