Estamos buscando mejorar nuestro uso de palabras clave para cubrir situaciones en las que el desarrollador podría tener dificultades para escribir tareas sin problemas para un robot. Describa la situación en la que la velocidad de implementación se ralentiza debido a la falta de una sintaxis más sencilla.
Comenta AQUÍ
RPA Framework es una colección de bibliotecas y herramientas de código abierto para la automatización robótica de procesos (RPA) y está diseñada para usarse tanto con Robot Framework como con Python. El objetivo es ofrecer bibliotecas centrales bien documentadas y mantenidas activamente para los desarrolladores de robots de software.
Obtenga más información sobre RPA en la documentación de Robocorp.
El proyecto es:
De los paquetes anteriores, rpaframework -core
y rpaframework -recognition
son paquetes de soporte, que por sí solos no contienen ninguna biblioteca.
El proyecto RPA Framework incluye actualmente las siguientes bibliotecas:
La x
en la columna PAQUETE significa que la biblioteca está incluida en el paquete rpaframework y, por ejemplo. x,pdf
significa que la biblioteca RPA.PDF
se proporciona en los paquetes rpaframework y rpaframework -pdf .
NOMBRE DE LA BIBLIOTECA | DESCRIPCIÓN | PAQUETE |
Archivo | Archivar archivos TAR y ZIP | incógnita |
Asistente | Mostrar información a un usuario y solicitar información. | asistente |
Navegador.Selenio | Controla los navegadores y automatiza la web | incógnita |
Navegador.Dramaturgo | Nueva forma de controlar los navegadores | especial (más abajo) |
Calendario | Para manipulaciones de fecha y hora. | incógnita |
Nube.AWS | Utilice los servicios de Amazon AWS | x, aws |
Nube.Azure | Utilice los servicios de Microsoft Azure | incógnita |
Nube.Google | Utilice los servicios de Google Cloud | |
Cripto | Operaciones comunes de hash y cifrado | incógnita |
Base de datos | Interactuar con bases de datos | incógnita |
De oficina | Automatización de escritorio multiplataforma | incógnita |
Escritorio.Portapapeles | Interactuar con el portapapeles del sistema. | incógnita |
Escritorio.Sistema Operativo | Leer información del sistema operativo y manipular procesos. | incógnita |
DocumentoAI | Envoltorio de procesamiento inteligente de documentos | incógnita |
DocumentoAI.Base64AI | Servicio de procesamiento inteligente de documentos | incógnita |
DocumentoAI.Nanonets | Servicio de procesamiento inteligente de documentos | incógnita |
Correo electrónico.Exchange | Operaciones de correo electrónico (protocolo Exchange) | incógnita |
Correo electrónico.ImapSmtp | Operaciones de correo electrónico (IMAP y SMTP) | incógnita |
Aplicación Excel | Controlar la aplicación de escritorio de Excel | incógnita |
Archivos Excel | Manipular archivos de Excel directamente | incógnita |
Sistema de archivos | Leer y manipular archivos y rutas. | incógnita |
ftp | Interactuar con servidores FTP | incógnita |
HTTP | Interactuar directamente con las API web | incógnita |
Hubspot | Acceder a objetos de datos de HubSpot CRM | punto central |
Imágenes | Manipular imágenes | incógnita |
Puente de acceso Java | Controlar aplicaciones Java | incógnita |
JSON | Manipular objetos JSON | incógnita |
Ministerio de Asuntos Exteriores | Autenticar usando contraseñas de un solo uso (OTP) y OAuth2 | incógnita |
Notificador | Notificar mensajes utilizando diferentes servicios. | incógnita |
AbiertoAI | Servicio de Inteligencia Artificial | abierto |
Outlook.Aplicación | Controlar la aplicación de escritorio Outlook | incógnita |
Leer y crear documentos PDF | x,pdf | |
Proceso Robocorp | Utilice la API de proceso de Robocorp | incógnita |
Robocorp.WorkItems | Utilice la API de elementos de trabajo de Robocorp | incógnita |
Robocorp.Vault | Utilice la API de secretos de Robocorp | incógnita |
Robocorp.Almacenamiento | Utilice la API de almacenamiento de activos de Robocorp | incógnita |
fuerza de ventas | Operaciones de fuerza de ventas | incógnita |
SAVIA | Controlar el cliente de escritorio SAP GUI | incógnita |
Hoja inteligente | Acceder a las hojas de Smartsheet | incógnita |
Mesas | Manipular, ordenar y filtrar datos tabulares | incógnita |
Tareas | Controlar la ejecución de tareas | incógnita |
Gorjeo | Interfaz API de Twitter | incógnita |
ventanas | Biblioteca alternativa para la automatización de Windows | x,ventanas |
Aplicación de Word | Controlar la aplicación de escritorio de Word | incógnita |
RPA.Browser.Playwright actualmente requiere una instalación especial, debido al tamaño del paquete y al paso posterior a la instalación, debe estar completamente instalado.
Conda.yaml mínimo requerido para instalar Playwright:
channels :
- conda-forge
dependencies :
- python=3.9.16
- nodejs=16.14.2
- pip=22.1.2
- pip :
- robotframework-browser==17.2.0
- rpaframework ==24.1.2
rccPostInstall :
- rfbrowser init
Obtenga información sobre la instalación de paquetes de Python en Instalación de paquetes de Python.
Método de instalación predeterminado con Robocorp Developer Tools usando conda.yaml:
channels :
- conda-forge
dependencies :
- python=3.9.16
- pip=22.1.2
- pip :
- rpaframework ==24.1.2
Para instalar todos los paquetes adicionales (incluidas las dependencias de Playwright), puede utilizar:
channels :
- conda-forge
dependencies :
- python=3.9.16
- tesseract=4.1.1
- nodejs=16.14.2
- pip=22.1.2
- pip :
- robotframework-browser==17.2.0
- rpaframework ==24.1.2
- rpaframework -aws==5.2.8
- rpaframework -google==7.0.3
- rpaframework -recognition==5.1.2
rccPostInstall :
- rfbrowser init
Instalación separada de bibliotecas AWS, PDF y Windows sin el rpaframework
principal:
channels :
- conda-forge
dependencies :
- python=3.9.16
- pip=22.1.2
- pip :
- rpaframework -aws==5.2.8 # included in the rpaframework as an extra
- rpaframework -pdf==7.1.5 # included in the rpaframework by default
- rpaframework -windows==7.3.2 # included in the rpaframework by default
Método de instalación con pip usando Python venv:
python -m venv .venv
source .venv/bin/activate
pip install rpaframework
Nota
Se requiere Python 3.8 o superior
Después de la instalación, las bibliotecas se pueden importar directamente dentro de Robot Framework:
*** Settings ***
Library RPA.Browser.Selenium
*** Tasks ***
Login as user
Open available browser https://example.com
Input text id:user-name ${ USERNAME }
Input text id:password ${ PASSWORD }
Las bibliotecas también están disponibles dentro de Python:
from RPA . Browser . Selenium import Selenium
lib = Selenium ()
lib . open_available_browser ( "https://example.com" )
lib . input_text ( "id:user-name" , username )
lib . input_text ( "id:password" , password )
¿Encontraste un error? ¿Falta una característica crítica? ¿Interesado en contribuir? Dirígete a la guía de Contribuciones para ver por dónde empezar.
El desarrollo del repositorio está basado en Python y requiere como mínimo la versión 3.8+ de Python instalada en la máquina de desarrollo. La versión predeterminada de Python utilizada en la plantilla de Robocorp Robot es 3.9.16, por lo que es una buena opción para instalar la versión. Las versiones no recomendadas son 3.7.6 y 3.8.1 porque tienen problemas con algunas de las dependencias relacionadas con rpaframework
. En este momento, tampoco se recomiendan las versiones más nuevas de Python a partir de la 3.11, porque algunas de las dependencias pueden causar problemas.
Las herramientas de desarrollo de repositorios se basan en poesía e invocación. La poesía es la herramienta subyacente utilizada para compilar, construir y ejecutar el paquete. Invoke se utiliza con fines de secuencias de comandos, por ejemplo, para tareas de linting, prueba y publicación.
Antes de escribir cualquier código, lea y reconozca nuestra extensa Guía para desarrolladores.
Primeros pasos para empezar a desarrollar:
poetry config virtualenvs.path null
poetry config virtualenvs.in-project true
poetry config repositories.devpi " https://devpi.robocorp.cloud/ci/test "
git clonar el repositorio
cree una nueva rama de Git o cambie a la rama correcta o permanezca en la rama maestra
poetry install
que instala el paquete con sus dependencias en el directorio .venv del paquete, por ejemplo paquetes/main/.venv
si realiza la prueba contra Robocorp Robot que utiliza devdata/env.json
poetry build
y uso del archivo .whl resultante (en el directorio dist/ ) en Robot conda.yamlpoetry build
y envíe el archivo .whl resultante (en el directorio dist/ ) a un repositorio y use la URL sin formato para incluirlo en Robot conda.yamlpoetry publish --ci
y señalar conda.yaml para usar la versión rpaframework en devpi. poetry run python -m robot <ROBOT_ARGS> <TARGET_ROBOT_FILE>
--report NONE --outputdir output --logtitle "Task log"
poetry run python <TARGET_PYTHON_FILE>
invoke lint
para asegurarse de que el formato del código cumpla con las pautas del repositorio rpaframework . Es posible y probable que la acción de Github falle si el desarrollador no ha modificado los cambios en el código. El formato del código se basa en black y flake8 y se ejecutan con la invoke lint
.
la documentación de la biblioteca se puede crear en la raíz del repositorio (el llamado nivel de paquete "meta"). La documentación se crea mediante las herramientas docgen utilizando la versión instalada localmente del proyecto, los cambios locales para el paquete principal se reflejarán cada vez que genere los documentos, pero si desea ver los cambios locales para los paquetes opcionales, debe utilizar invoke install-local --package <package_name>
usando el nombre de paquete apropiado (por ejemplo, rpaframework -aws
). Esto reinstalará ese paquete como una versión editable local en lugar de desde PyPI. Se pueden agregar varios paquetes de este tipo repitiendo el uso de la opción --package
. Para restablecer esto, use invoke install --reset
.
poetry update
y/o invoke install-local --package <package name>
make docs
docs/build/html/index.html
con el navegador para ver los cambios o ejecute make local
y navegue hasta localhost:8000
para ver los documentos como una página web local en vivo. # Before
[ tool . poetry . dependencies ]
python = " ^3.8 "
rpaframework = { path = " packages/main " , extras = [ " cv " , " playwright " , " aws " ] }
rpaframework -google = " ^4.0.0 "
rpaframework -windows = " ^4.0.0 "
# After
[ tool . poetry . dependencies ]
python = " ^3.8 "
rpaframework = { path = " packages/main " , extras = [ " cv " , " playwright " ] }
rpaframework -aws = { path = " packages/aws " }
rpaframework -google = " ^4.0.0 "
rpaframework -windows = " ^4.0.0 "
invoke test
(esto ejecutará pruebas unitarias de Python y pruebas de marco de robot definidas en el directorio tests/ de paquetes)
poetry run pytest path/to/test.py::test_function
inv testrobot -r <robot_name> -t <task_name>
cambios de confirmación de git
git push cambia a remoto
crear una solicitud de extracción desde la rama que describa los cambios incluidos en la descripción
actualice docs/source/releasenotes.rst con cambios (confirmar y enviar)
El empaquetado y la publicación se realizan después de que los cambios se hayan fusionado en la rama maestra. Todos los pasos siguientes deben realizarse dentro de la rama master.
invoke lint
e invoke test
poetry update
invoke publish
después de que la acción de Github en la rama maestra esté completamente verdeAlgunas herramientas recomendadas para el desarrollo.
Visual Studio Code como editor de código con las siguientes extensiones:
- Código Robocorp
- Servidor de lenguaje Robot Framework
- GitLens
- Extensión de Python
GitHub Desktop hará que la gestión de versiones sea menos propensa a errores
Este proyecto es de código abierto y tiene licencia según los términos de la licencia Apache 2.0.