PyScript: execute o Python no navegador

COMPARTILHAR:

O JavaScript há muito dominou a programação da Web do lado do cliente, mas será que um novo framework de Python pode mudar isso?

PyScript é um framework construído com Pyodide que permite executar código Python no navegador. Ainda está em sua infância, mas a equipe de desenvolvimento lançou recentemente uma versão beta.

Usando esta ferramenta, os desenvolvedores podem escrever Python diretamente em HTML sem a necessidade de um backend de servidor como Flask ou Django.

Embora ainda esteja em beta, o PyScript já oferece alguns recursos impressionantes que valem a pena experimentar.

Fácil de configurar

Começar com o PyScript é tão fácil quanto vincular o CDN ao cabeçalho HTML. Você também pode baixar o código-fonte e hospedar os arquivos do projeto em seu próprio site. Embora a última opção tenha alguns pequenos benefícios, é mais fácil vincular a uma CDN.

Para começar com o PyScript, você pode incluir arquivos JavaScript e CSS como este:

<head>
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
</head>

Escreva Python diretamente no HTML

Seu código Python está dentro de uma tag py-script personalizada no corpo do documento. Então, os arquivos JavaScript PyScript usarão Python para interpretar seu conteúdo. Você pode especificar um elemento HTML, como um div, para o PyScript gravar a saída.

Aqui está um exemplo de layout:

<body>
    <div id="python-container"></div>
    <py-script output="python-container">
print("Hello world")
    </py-script>
</body>

Sendo assim, lembre-se de que a indentação é importante no código Python. Você precisa ter cuidado para recuar corretamente para evitar Python IndentationError.

Importar e isolar módulos padrão do Python

Outro recurso exclusivo do PyScript é que ele permite separar dependências de volume. Portanto, isso significa que você listará uma dependência no cabeçalho HTML antes de poder importá-la. Todas as dependências estão dentro da tag py-env dentro da seção de cabeçalho HTML:

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
    <py-env>
- numpy
- pandas
- openpyxl
- matplotlib
    </py-env>
</head>
<body>
    <py-script>
import pandas
    </py-script>
</body>
</html>

Importe e use seus próprios módulos e arquivos locais

Então, ao usar o PyScript, você não precisa escrever todo o seu código Python diretamente em arquivos HTML. Você pode escrever funções ou módulos personalizados do Python em arquivos separados, listá-los na tag py-env e importá-los. Isso torna mais fácil escrever um código mais limpo e legível.

No entanto, você deve apontar a tag py-env para o caminho do módulo local. Novamente, você listará todos os arquivos locais que deseja usar em seu código Python. Por exemplo, se você estiver usando o Pandas para ler um arquivo do Excel, precisará especificar seu caminho:

<py-env>
- numpy
# Módulos e arquivos locais vão aqui:
- paths:
    - /main.py 
    - /path_to_excel_file.xlsx
</py-env>

Renderize a visualização diretamente para o DOM

Compartilhar visualizações e painéis pode ser uma tarefa complexa. O PyScript permite exibir storyboards e visualizações Python diretamente no navegador sem usar uma solução baseada em servidor. Você pode até escrever planilhas do Excel como HTML no DOM.

Por exemplo, com as dependências necessárias no ambiente virtual Python, você pode plotar dados de um arquivo Excel:

<!DOCTYPE html>
<html>
<head>
    <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" />
    <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
    <py-env>
- pandas
- matplotlib
# Módulos e arquivos locais vão aqui:
- paths:
    - /path_to_excel_file.xlsx
    </py-env>
</head>
<body>
    <div id="python-container"></div>
    <py-script output="python-container">
import pandas as pd
import matplotlib.pyplot as plt
df = pd.read_excel("excel_file_name.xlsx")
x = df["Months"]
y = df["growth_rate"]
fig, ax = plt.subplots()
ax.plot(x, y)
fig
    </py-script>
</body>
</html>

Você pode encontrar mais informações sobre o PyScript no README no Github ou no site oficial do PyScript.

PyScript alimenta o Python

Então, uma das desvantagens do Python é que ele não funciona diretamente no DOM. Portato, esta é uma das razões pelas quais o JavaScript sempre esteve na vanguarda do desenvolvimento web. Se o PyScript pode atingir o nível funcional do JavaScript, a introdução do PyScript pode mudar isso. No entanto, o PyScript é uma ferramenta útil porque ajuda você a hospedar e compartilhar facilmente seus projetos Python. No entanto, lembre-se de que alguns recursos podem falhar porque o PyScript ainda é um framework experimental.

Leia também: 6 maiores ameaças de segurança cibernética e como vencê-las

COMPARTILHAR:
brayan

Brayan Monteiro

Bacharel em Sistemas de Informação pela Faculdade Maurício de Nassau e desenvolvedor PHP. Além de programador, produzo conteúdo e gerencio blogs. Sou especialista em desenvolvimento de software, SEO de sites e em negócios digitais.