Saltar al contenido principal
Roberty Studio
RPAUtilidades

Custom Python Script

Custom Python Script

Ejecuta un bloque de código Python personalizado dentro del flujo de automatización y retorna la salida producida. Ideal para escenarios que requieren bibliotecas científicas, de procesamiento de datos u otras funcionalidades nativas del ecosistema Python que no están disponibles en JavaScript.

Atención

En Windows, la acción usa el Python incluido en Roberty. En macOS y Linux, se usa el Python instalado en el sistema, que debe estar disponible en la máquina donde se ejecutará el robot.


Opciones​

Código​

Escribe el bloque de código Python que se ejecutará. Usa print() para definir el valor que retornará la acción: el retorno capturado es todo lo que se imprima en la salida estándar durante la ejecución.

Acceder a las salidas de acciones anteriores​

El código Python se ejecuta como un proceso separado y no tiene acceso directo a las variables del flujo. Para pasar valores de acciones anteriores, usa la sintaxis de interpolación de JavaScript (${...}) directamente en el código: el valor se sustituye antes de que Python se ejecute:

python
# El valor de la acción anterior se inserta antes de que Python se ejecute
nome = "${actions['lerNome']['value']}"
codigo = "${actions['lerCodigo']['value']}"

print(f"Cliente: {nome} — Código: {codigo}")

Para valores numéricos o booleanos, la interpolación funciona directamente:

python
total = ${actions['calcularTotal']['value']}
print(total * 2)

Para objetos o listas, usa JSON.stringify para serializar y json.loads para deserializar en Python:

python
import json

dados = json.loads('${JSON.stringify(actions["consultarDados"]["value"])}')
for item in dados:
print(item["nome"])

Acceder a los parámetros del robot​

Usa {{PARAMETROS.nombre}} para insertar un parámetro directamente en el código:

python
servidor = "{{PARAMETROS.servidor}}"
print(f"Conectando em: {servidor}")

Para secretos (parámetros marcados como contraseña), usa {{SEGREDOS.nombre}}.

información

La sintaxis ${...} la evalúa JavaScript antes de que Python se ejecute. Python recibe el código con los valores ya sustituidos: nunca ve el ${...}.

Retornos​

Código Javascript​

js
actions["id-de-la-accion"].value // salida producida por el código Python mediante print (Cualquiera)

Selección de campos​

  • value — contenido impreso por el código Python durante la ejecución (Cualquiera)

Reglas y Condiciones​

  • El campo Código es obligatorio.
  • El retorno de la acción es el contenido impreso mediante print() durante la ejecución.
  • En macOS y Linux, Python debe estar instalado y configurado correctamente en la máquina donde se ejecuta el robot.
  • Los errores de ejecución en el código Python interrumpen la ejecución del robot.

Usar bibliotecas externas​

Roberty utiliza un Python propio (versión 3.8) y es posible instalar cualquier biblioteca mediante pip. Consulta el tutorial Instalar bibliotecas Python externas para el paso a paso completo.