Run Python

action_run_python · action · Utility · Disponibile · v1.0.0

Descrizione

Esegue codice Python in sandbox Docker isolata (no rete, memoria 512MB, CPU 1 core, no privileges, read-only FS). Libreria stdlib disponibile: matplotlib/numpy/pandas/scipy/plotly/pillow/sympy/openpyxl/tabulate. Output: { stdout, stderr, exitCode, durationMs, files[] (grafici/CSV salvati in output/ ritornati base64) }. Timeout configurabile (max 120s). Input/ctx esposti come dict Python via env var FLOWFORGE_INPUT. Use case: data analysis su CSV, generazione grafici matplotlib per report, calcoli statistici/finanziari complessi, ML inference one-shot, manipolazione immagini PIL, conversioni formati custom non coperte da nodi stdlib.

⚙️ Parametri di configurazione

Campi mostrati nell’editor quando si configura il nodo. Generati direttamente dal NodeDefconfigFields.

CampoTipoRequiredDefaultDescrizione
code
Codice Python
codesiimport json, os data = json.loads(os.environ.get("FLOWFORGE_INPUT", "{}")) print({"received_keys": list(data.keys()), "count": len(data)}) Codice Python. Input del nodo precedente disponibile in env var FLOWFORGE_INPUT (JSON string). Output stdout viene catturato e parsato come JSON se possibile, altrimenti tornato come stringa. Per output file (grafici/CSV) salva in cartella output/. Esempio: plt.savefig("output/chart.png").
timeoutMs
Timeout (ms)
numberno30000Tempo massimo esecuzione. Min 5000, max 120000. Default 30s.
parseStdoutJson
Parse stdout come JSON
booleannotrueSe on, prova a parsare stdout come JSON e ritorna l'oggetto strutturato. Se off o parsing fail, ritorna stdout come stringa.

💡 Esempio configurazione

Snippet JSON del nodo come compare nel workflow. I valori sono derivati daidefaultValue e dai parametri required.

{
  "id": "node-action_run_python-1",
  "defId": "action_run_python",
  "label": "Run Python",
  "config": {
    "code": "import json, os\n\ndata = json.loads(os.environ.get(\"FLOWFORGE_INPUT\", \"{}\"))\nprint({\"received_keys\": list(data.keys()), \"count\": len(data)})\n",
    "timeoutMs": 30000,
    "parseStdoutJson": true
  }
}

🔗 Nodi correlati nella stessa categoria

Pronto a usare Run Python?

Disponibile da subito in tutti i piani FlowForge. Provalo gratis senza carta di credito.

Inizia gratisSfoglia tutti i nodi