Exécuter le code python à l'intérieur du navigateur sans Jython

y a-t-il un moyen d'exécuter du code python dans un navigateur, autre que D'utiliser Jython et un applet?

l'exécution n'a rien à voir avec le graphisme. Par exemple, il suffit de faire la somme de tous les chiffres d'un fichier binaire de 1Go (choisi par l'utilisateur du navigateur) et de retourner le résultat au serveur.

je suis conscient que python peut être exécuté à distance en dehors d'un navigateur, mais ma demande est à faire à l'intérieur d'un navigateur.

Pour sûr, je prendre pour acquis que l'utilisateur se réserve le droit d'exécuter ou non, et il lui sera demandé de le faire, et tous ces trucs de sécurité... mais ce n'est pas ma question.

18
demandé sur proportional 2009-08-06 00:43:04

10 réponses

Pyjamas le projet a un compilateur appelé pyjs qui transforme le code Python en Javascript.

9
répondu Alexander Ljungberg 2009-08-05 21:10:38

la réponse de nosklo est fausse: pyxpcomext pour firefox ajoute le support language="python" aux balises de script. Oui, c'est un énorme plugin de 10 Mo, mais c'est la vie. i think it's best if you refer to http://wiki.python.org/moin/WebBrowserProgramming parce que c'est là que tous les liens documentés connus entre python et la technologie des navigateurs web sont enregistrés: vous pouvez faire votre choix, là.

6
répondu user362834 2010-06-09 20:07:20

j'ai compilé un tableau comparant plusieurs technologies de Python-in-Browser il n'y a pas si longtemps: http://stromberg.dnsalias.org/~strombrg/pybrowser/python-browser.html

6
répondu dstromberg 2013-07-26 18:56:09

sur mes voyages, je suis tombé sur Skulpt, un projet qui semble offrir Python directement dans le navigateur sans plug-ins. C'est autorisé par le MIT.

Page D'Accueil Skulpt

Skulpt @ Github

4
répondu Big Rich 2013-04-10 09:47:38

Non, vous ne pouvez pas.

les navigateurs modernes n'utilisent que javascript ou des plugins. Vous pouvez développer votre propre plugin python et convaincre les gens de le télécharger et de l'exécuter, mais je suppose que cela tombe dans la catégorie "pas à l'intérieur du navigateur".

3
répondu nosklo 2009-08-05 20:50:02

vous voulez dire côté client?

bien Sûr, vous pouvez! Mais vous devez d'abord installer python sur le client.

le livre relié décrit que pour utiliser le script actif côté client, vous pouvez le tester avec le html fichier.

<html><body>
<script language='Python'>alert("Hello, Python!")</script>
</body></html>

dans l'ancienne version référencée dans ce livre (programmation Python sur Win32 Par Mark Hammond, Andy Robinson) il est dit que vous devez installer le Python Win32 extensions, et il enregistrera automatiquement les scripts actifs de Python. Devriez-vous le faire manuellement, vous devez exécuter le script python\win32comext\axscript\client\pyscript.py.

3
répondu Esteban Küber 2009-08-05 21:04:12

http://repl.it/ - interpréteur Python en JavaScript tournant du côté du client. Il existe de nombreuses autres langues. Source est disponible sous licence MIT, ce qui est génial.

3
répondu anatoly techtonik 2012-05-22 11:40:13

Vous pouvez maintenant (2016) aussi utiliser:

http://www.transcrypt.org

il compile Python 3.6 (incl. héritage multiple, surcharge de l'opérateur, tous les types de compressions, les générateurs et les itérateurs) pour lean et rapide JS, prend en charge le débogage au niveau des sources avec sourcemaps et en option static typechecking en utilisant mypy.

avertissement: je suis l'initiateur du projet.

3
répondu Jacques de Hooge 2017-11-29 18:40:11

Par accident j'écoutais Hanselminutes où il a parlé du projet Gestalt. C'est une solution pour intégrer un langage comme IronRuby et IronPython dans le navigateur via Silverlight.

Donc je pense que la réponse est non si vous n'avez pas tout spécial plugins.

2
répondu Eugeniu Torica 2009-08-05 20:53:28

Brython - "Un Python 3 la mise en œuvre de la programmation web côté client"

2
répondu Sepero 2013-12-08 16:08:01