Faire fonctionner les scripts Python dans un navigateur Web implique de gérer les fonctions de l’application Web dans une page Web via le langage de programmation Python.
Étant donné que JavaScript est le principal langage de programmation pour faire fonctionner un navigateur Web et une page Web interactive, Python est généralement utilisé pour la science des données, apprentissage automatiqueet intelligence artificielle.
Même si nous avons des infrastructures back-end comme Django et Flask, ou des générateurs de sites statiques comme Jekyll, Python est généralement derrière JavaScript pour le développement Web.
Mais grâce aux dernières améliorations, l’avenir de JavaScript est ouvert à la discussion. “PyScript” permet aux scripts Python de fonctionner facilement dans les composants Web.
Selon PyScript.net:
“PyScript est un framework qui permet aux utilisateurs de créer des applications Python riches dans le navigateur en utilisant l’interface HTML et la puissance de Pyodure, ÉTAIT M, et les technologies Web modernes. Le framework PyScript offre aux utilisateurs de tous les niveaux d’expérience un accès à un langage de programmation expressif et facile à apprendre avec d’innombrables applications.
Dans cette colonne, vous apprendrez ce qu’est PyScript, verrez un exemple, découvrirez des alternatives et découvrirez également comment créer une application Web personnalisée avec Python et PyScript.
Sauter à:
- Qu’est-ce que la migration JavaScript vers Python ?
- Qu’est-ce que PyScript et comment pouvez-vous l’utiliser pour créer des applications Web ?
- Un exemple d’exécution de script Python dans un navigateur Web
- Comment voir la sortie du terminal du PyScript
- Comment créer une application Web personnalisée avec Python et PyScript ?
- Quels sont les inconvénients de PyScript ?
- Quelles sont les alternatives à PyScript ?
- PyScript et Brython peuvent-ils affecter les moteurs de recherche et le référencement ?
- Conclusion pour Python en tant que script Web
Qu’est-ce que la migration JavaScript vers Python ?
Python est un langage de programmation lisible par l’homme.
Ainsi, il existe de nombreux langages de programme intermédiaires Python pour aider Javascript et les modules et packages Java sont utilisés dans l’environnement Python.
Par exemple, “TensorFlow” est principalement un package JS, ou Plotly et Selenium.
Il existe même des packages spéciaux pour transformer le code JavaScript en code Python, tels que Js2Py.
Pourquoi est-il important de comprendre JavaScript derrière Python ?
Parce que l’utilisation de scripts Python dans le navigateur Web ne signifie pas que l’âge de JavaScript se termine pour le développement Web.
JavaScript fonctionne toujours derrière les scripts Python dans le navigateur Web.
Qu’est-ce que PyScript et comment pouvez-vous l’utiliser pour créer des applications Web ?
PyScript est un framework permettant aux navigateurs Web d’utiliser des scripts Python.
PyScript transforme les blocs de code Python en équivalents Javascript dans les coulisses.
Pour utiliser PyScript dans un navigateur Web, procédez comme suit.
Utilisez la feuille de style et JavaScript dans la zone du fichier HTML.
<link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" /> <script defer src="https://pyscript.net/alpha/pyscript.js"></script>
- Utilisez le code Python dans le composant Web ““.
- Faites attention à l’indentation.
- Ne formatez pas le code Python dans le composant Web ““.
- Utilisez les raccourcis et les arguments du PyScript pour importer des modules et des packages Python.
- Utilisez les classes et les identifiants CSS pour insérer les résultats dans la division spécifique des documents HTML.
Un exemple d’exécution de script Python dans un navigateur Web
Un exemple d’exécution d’un script Python dans le navigateur est présenté ci-dessous.
<html> <head> <link rel="stylesheet" href="https://pyscript.net/alpha/pyscript.css" /> <script defer src="https://pyscript.net/alpha/pyscript.js"></script> <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.1.3/dist/css/bootstrap.min.css" rel="stylesheet" crossorigin="anonymous"> <py-env> - numpy - matplotlib </py-env> </head>
La zone du fichier HTML représente les ressources les plus importantes.
Nous avons utilisé les “pyscript.css” et “pyscript.js”.
Nous avons également utilisé le composant web “” pour rendre les modules Python à importer.
Dans cet exemple, nous avons importé “numpy” et “matplotlib”.
Dans la section ““, nous utiliserons ces modules pour créer un Python Line Plot dans un navigateur Web.
<body> <h1>Let's plot random numbers</h1> <div id="plot"></div> <py-script output="plot">
Au début du , nous avons utilisé un “div” avec l’ID “plot”.
Il est nécessaire pour effectuer l’insertion de sortie du script Python.
Le “” est nécessaire pour correspondre à la valeur d’ID de la Div HTML spécifique.
import matplotlib.pyplot as plt import numpy as np x = np.random.randn(1000) y = np.random.randn(1000) fig, ax = plt.subplots() ax.scatter(x, y) fig </py-script> </body> </html>
Le script Python ci-dessus est un simple script de tracé de ligne. Et vous pouvez voir le résultat ci-dessous.
-
Capture d’écran de l’auteur, juin 2022<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/pyscript-1-62a9c7b69de2e-sej-480x447.png" alt="Application Python" />
L’exemple ci-dessus montre comment créer un graphique linéaire à l’aide de PyScript.
Comment voir la sortie du terminal du PyScript
Pour chaque script Python, il existe toujours un terminal qui fonctionne et génère les messages du processus de calcul.
-
Capture d’écran de l’auteur, juin 2022<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/pyscript-2-62a9c7cf49471-sej-480x424.png" alt="Console Python" />
La console du navigateur doit être lue et suivie par le développeur pour voir comment fonctionne le PyScript et ce qui se passe dans les coulisses.
Par exemple, la capture d’écran ci-dessus montre le processus d’exécution du script Python que nous avons créé.
Il explique comment le “numpy”, ou “matplotlib” et leurs dépendances sont chargés, et utilisés par quelle ressource.
Comment créer une application Web personnalisée avec Python et PyScript ?
Pour créer une application Web personnalisée avec Python et PyScript, procédez comme suit :
- Importez les fichiers JS et CSS nécessaires à partir de PyScript.
- Créez un document HTML avec la syntaxe de balise HTML appropriée.
- Utilisez la balise HTML “py-script” avec l’attribut “output”.
- Utilisez une Div HTML avec un ID spécifique pour correspondre à la valeur de l’attribut “output”.
- Utilisez “py-env” pour les bibliothèques non intégrées de Python.
- Insérez le script Python dans la balise “py-script” sans erreur de syntaxe et d’indentation.
- Utilisez “return” dans une fonction Python ou “print” pour terminer votre script.
- Actualisez la page Web pour voir les résultats.
Vous trouverez ci-dessous un exemple d’application Web Python personnalisée pour la “génération aléatoire de mots de passe” en fonction de la longueur du mot de passe.
-
Capture d’écran de l’auteur, juin 2022<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/pyscript-web-app-1-62b19c664ef80-sej.png" alt="Création d'applications Web Python" />
La capture d’écran ci-dessus montre un exemple de PyScript dans un document HTML pour générer des mots de passe personnalisés.
Le script Python que j’ai utilisé est ci-dessous.
import string import random characters = list(string.ascii_letters + string.digits + "!@#$%^&*()") def generate_random_password(): length = int(input("Enter password length: ")) random.shuffle(characters) password = [] for i in range(length): password.append(random.choice(characters)) random.shuffle(password) print("".join(password)) generate_random_password()
Et le version en direct de l’application Web Python personnalisée est là.
Écrivez simplement une valeur numérique dans la zone de saisie.
-
Capture d’écran de l’auteur, juin 2022<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/pyscript-4-62a9c84810bd1-sej.png" alt="Zone de saisie" />
Et, il vous donnera un simple mot de passe de 45 caractères.
-
Capture d’écran de l’auteur, juin 2022<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/pyscript-5-62a9c85fd2bac-sej-480x111.png" alt="Application Python personnalisée SEJ" />
Vous pouvez utiliser cette technologie pour certains de mes autres articles SEJ pour audit des plans de siteou visualisation des sujets d’actualité à partir de sites d’information.
Ou, à l’avenir, nous pourrons démontrer des applications Web plus sophistiquées via PyScript.
Quels sont les inconvénients de PyScript ?
Le principal inconvénient de PyScript est le manque de support.
PyScript est annoncé lors de Pycon 2022 aux développeurs Python.
C’était un événement important et passionnant, mais les attentes de la communauté étaient plus élevées que l’état actuel de PyScript.
En raison du faible support de la communauté, le développement de PyScript pourrait être plus lent à l’avenir, mais quand on pense au parcours de Python, ce n’est pas surprenant.
Python n’était pas si populaire qu’il y a cinq ans, car il n’était pas connu.
-
Capture d’écran de l’auteur, juin 2022<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/programming-language-comparison-1-62b188647efa1-sej.png" alt="Tendances de recherche Python" />
Ci-dessus, vous pouvez voir comment Python a globalement supprimé la demande de recherche de JavaScript.
La principale raison de la croissance de la popularité de Python est la bibliothèque “pandas”.
C’est pourquoi, ML et Data Science sont les principaux objectifs de Python, mais cela ne doit pas continuer de cette façon.
Ainsi, PyScript devrait être sérieusement pris en considération pour l’avenir du développement Web.
-
Capture d’écran de l’auteur, juin 2022<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/pyscript-search-demand-1-62b187a02bc04-sej.png" alt="Demande de recherche Pyscript" />
Quelles sont les alternatives à PyScript ?
Les alternatives à PyScript ne sont pas équivalentes à PyScript puisqu’il s’exécute directement sur le navigateur, mais il existe néanmoins différentes méthodes pour utiliser indirectement les scripts Python à l’intérieur d’un site Web.
Ceux-ci comprenaient « brython », « pyodide », « Appwrite », « django-readers », « appdeamon ».
Certaines alternatives à PyScript sont pour Firebase telles que Appwrite, et d’autres travaux pour le développement Web tels que Brython.
<img src="https://cdn.searchenginejournal.com/wp-content/uploads/2022/06/brython-info-62b19c042fe5a-sej.png" alt="Bryhthon pour la création d'applications Web" />
Brython est plus ancien que Pyscript et vise à faire de Python le langage principal pour le développement Web avec le type de fichier “text/python” au lieu de “text/javascript”.
PyScript et Brython peuvent-ils affecter les moteurs de recherche et le référencement ?
Oui, à l’avenir, PyScript et Brython peuvent accroître leur effet sur l’industrie du développement Web.
L’évolution des technologies et des industries de développement Web affecte les robots d’exploration et les protocoles des moteurs de recherche.
Si un moteur de recherche commence à voir des fichiers “text/python” ou des scripts “.py” dans le code source HTML, il devrait pouvoir le faire fonctionner pour voir la page Web telle quelle.
Pour le moment, PyScript fonctionne via JavaScript, et Brython est déjà au début de son parcours malgré son ancienneté.
D’autres alternatives PyScript fonctionnent via Node.js comme les bibliothèques de programmation back-end ou Firebase comme les systèmes basés sur le cloud.
Ainsi, à l’avenir, Google, en tant que moteur de recherche fortement codé en Python, pourrait avoir besoin de restituer des fichiers Python pour explorer et afficher des pages Web.
Conclusion pour Python en tant que script Web
Pour les personnes qui aiment coder, peu importe que vous utilisiez Python ou JavaScript pour une certaine tâche.
Mais, Python est le langage de programmation le plus simple à apprendre car lisible par l’homme, il offre plus de fonctionnalités avec moins de caractères.
La plupart des data scientists et des ingénieurs ML (machine learning) connaissent bien Python, et transférer leurs talents dans le développement web serait similaire à l’unification de deux univers différents.
Davantage de ressources:
Image en vedette : TippaPatt/Shutterstock
— to www.searchenginejournal.com