3 formas de integrar n8n e Python -Turbine suas automações

Aprenda como integrar n8n e Python, combine o poder dessas duas ferramentas em automações que vão potencializar seus projetos!

Existem três formas de integrar n8n e Python: (1) o nó Code, que roda Python direto no fluxo para tratar dados; (2) Webhooks, em que um script Python usa a biblioteca requests para enviar um POST à URL do n8n; e (3) rodar scripts inteiros via Docker com o nó Execute Command.

Introdução – Como combinar n8n e Python

Você já usa ou ouviu falar do n8n? Essa ferramenta poderosa de automação no-code/low-code tem ganhado um espaço enorme no mercado por facilitar a criação de fluxos de trabalho.

Mas, se você já é um Impressionador em Python, a notícia é ainda melhor: a união dessas duas ferramentas é uma verdadeira potência!

Neste artigo, vamos te mostrar 3 formas de integrar n8n e Python, detalhando o que você precisa saber sobre cada uma para começar a usar agora mesmo.

As três formas de integração que veremos são:

  • Nó de Código em Python (Code Node)
  • Integração por Webhooks
  • Execução de Scripts Python Inteiros (Docker/Local)

Mas antes de mergulharmos nas integrações, vamos a um breve parênteses para quem ainda não conhece o n8n.

Para fazer o download do(s) arquivo(s) utilizados na aula, preencha com o seu e-mail:

Não vamos te encaminhar nenhum tipo de SPAM! A Hashtag Treinamentos é uma empresa preocupada com a proteção de seus dados e realiza o tratamento de acordo com a Lei Geral de Proteção de Dados (Lei n. 13.709/18). Qualquer dúvida, nos contate.

O que é o n8n e por que ele se junta ao Python?

O n8n é uma ferramenta de automação onde você constrói um fluxo visual de trabalho. Ele permite que você conecte diferentes aplicativos e serviços, automatizando tarefas repetitivas.

O grande diferencial do n8n é: ele já vem com dezenas de integrações prontas, o que simplifica o processo de conexão com APIs, bancos de dados, ferramentas de IA e muito mais.

Mas, se o n8n é tão bom, por que usar Python?

É simples: por mais que o n8n tenha "caixinhas" prontas, existem tratamentos de dados e lógicas específicas que são muito mais eficientes e rápidas de serem construídas com código.

Por isso, a união do fluxo visual e intuitivo do n8n com a flexibilidade e poder do Python é a combinação perfeita para automações de alto nível.

Criando um Nó de Código em Python

Essa é a forma mais simples e acessível para qualquer pessoa que já usa o n8n e sabe programar em Python.

Ao construir seu fluxo, você pode simplesmente adicionar um nó do tipo "Code" e escolher a linguagem Python (embora o JavaScript seja o padrão). Esse nó permite que você execute um trecho de código Python para manipular dados no meio do seu fluxo.

Tela do n8n com o botão de adicionar um nó em destaque e uma tela lateral com o título Code e a opção Code in Python em destaque

Exemplo Prático: Transcrição de Vídeo do YouTube

Imagine que você está construindo um fluxo para transcrever vídeos do YouTube. A API de transcrição devolve o texto todo quebrado em pequenos pedaços. Juntar isso usando apenas as "caixinhas" do n8n é complicado e consome muitos recursos.

Automação para transcrever vídeos do YouTube criada no n8n

Nesta automação, o n8n extraí o link, envia para uma API responsável pela transcrição e recebe a resposta como uma lista de dicionários, que entrega fragmentos do texto.

É nesse momento que o código em Python é utilizado. Com um comando simples, o Python junta todos os pedaços e devolve um texto único através de um comando join.

Tela de configurações dos parâmetros do bloco Code in Python no n8n. O campo Python, traz um código utilizado para realizar capturar os fragmentos de texto transcritos e juntá-los em um único texto

Por fim, é criado um documento do Google com o texto final.

Dicas para usar o Python no bloco Code

Segue abaixo algumas dicas que podem te ajudar a utilizar o nó "Code in Python" da melhor forma possível na sua automação:

  • O n8n trabalha com JSONs. Para o Python, um JSON é traduzido como um dicionário. Os dados de entrada são sempre uma lista de dicionários;
  • Sua resposta no Python sempre deve ser um return de uma lista de dicionários (o n8n a transforma em um JSON para o próximo nó);
  • Para pegar dados do nó imediatamente anterior, use a variável item;
  • Para pegar dados de um nó específico, use um underline (_), pois ele vai trazer todas as opções de nós anteriores e para trazer todas as informações use o .all() ;
  • Como o recurso Python no n8n ainda está em versão Beta (no momento da escrita), a melhor forma de debugar seu código é retornando (dando return) o valor da variável analisada, ou seja,  você constrói o código por partes, verificando a saída a cada etapa;
  • Caso você tenha familiaridade com o Regex do Python, saiba que ele pode ser utilizado normalmente.

Integração por Meio de Webhooks (Requests)

Essa é a forma ideal para quem tem um sistema, site ou script em Python rodando fora do n8n e precisa acionar uma automação.

A comunicação entre dois sistemas é feita por meio de webhooks, que nada mais são do que requisições HTTP (como um POST).

Como funciona?

No n8n, você cria um nó de Webhook para ser o gatilho da sua automação. Ele gera uma URL única (link) que o n8n fica "ouvindo".

Bloco de webhook no n8n

No seu sistema Python, você usa a biblioteca requests para fazer uma requisição do tipo POST para essa URL.

Tela de configurações de parâmetros do webhook no n8n
Tela de código do sistema Python com o código fornecido pelo nó de webhook do n8n aplicado

No request.post(), você envia um payload (um dicionário Python) com todas as informações necessárias para a automação (ex: um link de vídeo, um nome, um texto).

O n8n recebe esse webhook, pega as informações enviadas no corpo (body) e inicia o fluxo de automação.

Lembre-se de usar o "Production URL" (URL de Produção) do seu nó Webhook no n8n para que ele funcione 24 horas por dia e 7 dias na semana. O link de teste só funciona enquanto você está editando o fluxo.

Ícone Agentes de IA e n8nAgentes de IA e n8n Impressionador

Crie agentes de IA que trabalham por você e automações que rodam sozinhas, sem escrever uma linha de código. Aprenda o n8n do zero, conecte WhatsApp, e-mail, planilhas e os sistemas que a empresa já usa, e monte projetos reais como agente de atendimento, de cobrança e de triagem de currículos.

Começar agoraSeta para a direita
Fundo Agentes de IA e n8nTelas Agentes de IA e n8n

Execução de Scripts Python Inteiros (Docker e Execute Command)

Esta é a opção mais avançada, mas é a solução perfeita se você já tem um script Python complexo e completo (com muitas linhas de código, importação de bibliotecas externas, integração com arquivos locais, etc.) e quer que o N8N o execute como uma etapa do fluxo.

Atenção: Você não pode usar o N8N Cloud ou a versão padrão da web para isso!

O que você precisa para essa integração?

Inicialmente, você precisa ter o Docker instalado no seu computador. Em seguida, é necessário instalar o n8n em um servidor usando o Docker. Dessa forma, o Docker cria um ambiente isolado para o N8N e o Python.

Caso você queira aprender como realizar esse processo de instalação de forma detalhada, você pode acessar o nosso vídeo Instalando o n8n no PC, DE GRAÇA PRA SEMPRE, com Docker.

No vídeo que eu deixei acima, é baixada a imagem do n8n padrão, contudo é importante que você saiba que a versão do n8n que você precisa, deve ser uma com o Python já instalado. Por isso, você pode buscar na barra de pesquisa por "n8n-python" ao invés de buscar apenas pelo "n8n".

Tela de busca do Docker com o destaque para a imagem do naskio/n8n-python

Com a versão Docker, o n8n  libera um nó especial chamado "Execute Command", que permite rodar comandos do sistema operacional, como: python3 main.py .

Fluxo da automação no n8n com a opção Execute Command
Configuração de parâmetros do nó Execute Commands com um comando para executar um arquivo main.py

Mas esse arquivo main.py pode estar em qualquer local no seu computador?

A resposta é não, ele precisa estar dentro de uma pasta específica chamada data, pois é apenas essa pasta que o n8n observa.

Tela do Docker com a pasta data em destaque

E você deve estar se perguntando como eu faço para adicionar o meu arquivo python na pasta data.

Bom, você pode abrir o terminal e digitar o seguinte comando:

Codigo
docker cp <caminho do arquivo> <id do container no docker>:data

Você pode copiar o caminho do arquivo, clicando com o botão direito do mouse e selecionando a  opção "Copiar como caminho", ou selecionar o arquivo e utilizar o atalho "CTRL + SHIFT + C".

Já o id do container no Docker fica localizado na tela aba de "Containers" no campo "Container ID". Basta clicar no ícone de copiar ao lado direito do número do ID e colar no terminal.

Tela do Docker na área de Container com o ID do container em destaque

Lembre-se, como o Docker cria um ambiente isolado, se o seu script Python usa bibliotecas não nativas (como Pandas ou Scikit-learn), você precisa instalar essas bibliotecas dentro do seu container Docker antes de rodar o script.

Perguntas frequentes

1. Como executar código Python dentro do n8n?

Adicione um nó do tipo Code ao seu fluxo e escolha a linguagem Python (o padrão é JavaScript). Esse nó roda um trecho de Python para manipular os dados que passam pelo fluxo. Os dados de entrada chegam como uma lista de dicionários, e a resposta também deve ser um return de lista de dicionários.

2. Como o Python troca dados com o n8n?

O n8n trabalha com JSON, que no Python vira dicionário. Os dados de entrada são sempre uma lista de dicionários, e seu código deve retornar (return) uma lista de dicionários, que o n8n converte de volta em JSON para o próximo nó. Use a variável item para pegar os dados do nó anterior.

3. Como acionar uma automação do n8n a partir de um script Python externo?

Crie um nó de Webhook no n8n — ele gera uma URL única que fica em escuta. No seu script Python, use a biblioteca requests para fazer um requests.post() a essa URL, enviando um payload (dicionário) com as informações. Lembre de usar a Production URL para que o webhook funcione o tempo todo.

4. É possível rodar um script Python completo no n8n?

Sim, mas só na versão instalada via Docker (não no n8n Cloud). Use uma imagem que já traga o Python — busque por n8n-python no Docker. Coloque seu arquivo na pasta data com docker cp e execute-o com o nó Execute Command, rodando algo como python3 main.py. Instale as bibliotecas externas no container antes.

Conclusão - Integração n8n e Python

Vimos que a união do Python com o n8n não é apenas uma possibilidade, mas sim uma estratégia poderosa para quem busca automações realmente completas e eficientes.

O n8n traz a facilidade do fluxo visual; o Python, o poder de processamento e a lógica complexa. Juntos, eles eliminam o dilema de escolher entre código e no-code.

Quer aprender como usar a ferramenta? Confira o curso completo de n8n da Hashtag Treinamentos!

Caso prefira esse conteúdo no formato de vídeo-aula, assista ao vídeo abaixo ou acesse o nosso canal do YouTube!

O que você aprende neste vídeo

Resposta rápida: São três caminhos, do mais simples ao mais avançado: o nó de código em Python dentro do fluxo; a integração por webhook, em que um sistema seu em Python dispara o fluxo com requests.post; e a execução de um script inteiro, que só funciona no n8n rodando local via Docker, com o nó Execute Command.

Neste vídeo (25 min):

  • 1:00 - Por que combinar os dois: o n8n já traz integrações e credenciais prontas; o Python entra onde a lógica não cabe em caixinhas.
  • 2:00 - Forma 1: no + do fluxo, busque Code, além do JavaScript, o nó aceita Python.
  • 5:00 - Regra dura do nó de código: o n8n trabalha com JSON, então o seu código precisa terminar com return de uma lista de dicionários.
  • 6:00 - Para ler o nó imediatamente anterior, use a variável items.
  • 6:40 - Para ler qualquer outro nó, digite _ e escolha o nó pelo nome, com .all().
  • 8:00 - O nó Python está em beta: o print nem sempre aparece no console do navegador.
  • 9:00 - O jeito prático de depurar é ir retornando variáveis parciais e montando o código aos poucos.
  • 10:00 - Forma 2: webhook. O sistema em Python faz requests.post(url, json=payload) e o fluxo recebe.
  • 11:00 - O n8n dá duas URLs: a de teste (webhook-test) e a de produção (webhook). Ative o fluxo e use a de produção.
  • 13:00 - Tudo que estiver no dicionário do payload chega no corpo do webhook, e pode ser usado nos nós seguintes.
  • 15:00 - Forma 3: rodar um .py completo. Isso não existe no n8n cloud, só na instalação local.
  • 16:00 - O caminho é o Docker, com uma imagem que já traga o Python (procure por n8n-python).
  • 19:00 - Aí aparece o nó Execute Command, capaz de rodar python3 main.py.
  • 20:00 - A pegadinha: o contêiner só enxerga a pasta dele. Copie o script com docker cp caminho id_do_container:/data, e instale as bibliotecas dentro do contêiner.

Hashtag Treinamentos

Para acessar outras publicações de Python, clique aqui!


Quer aprender mais sobre Python com um minicurso básico gratuito?

Posts mais recentes de Python

Posts mais recentes da Hashtag Treinamentos