Domanda

Esiste un modo per eseguire il codice Python in un browser, oltre a usare Jython e un'applet?

L'esecuzione non deve occuparsi di nulla relativo alla grafica. Ad esempio, basta sommare tutte le cifre di un file binario da 1 GB (scelto dall'utente del browser) e quindi restituire il risultato al server.

Sono consapevole che python può essere eseguito in remoto all'esterno di un browser, ma il mio requisito deve essere eseguito all'interno un browser.

Certo, do per scontato che l'utente si manterrà il diritto di eseguire o meno, e gli verrà chiesto di farlo, e tutte queste cose di sicurezza ... ma questa non è la mia domanda.

È stato utile?

Soluzione

Il progetto Pyjamas ha un compilatore chiamato pyjs che trasforma il codice Python in Javascript.

Altri suggerimenti

La risposta di nosklo è sbagliata: pyxpcomext per firefox aggiunge language = " python " supporto ai tag di script. sì, è un enorme plug-in da 10 MB, ma questa è la vita. penso che sia meglio se ti riferisci a http://wiki.python.org/moin/WebBrowserProgramming perché è lì che vengono registrati tutti i collegamenti documentati noti tra Python e la tecnologia del browser Web: puoi fare la tua scelta, lì.

Ho messo insieme una tabella confrontando molte tecnologie Python-In-Browser non molto tempo fa: http://stromberg.dnsalias.org/~strombrg/pybrowser/python-browser.html

Durante i miei viaggi, mi sono imbattuto in Skulpt , un progetto che sembra offrire Python direttamente nel browser senza plugins. È concesso in licenza in base al MIT.

Home page di Skulpt

Skulpt @ Github

No, non puoi.

I browser moderni eseguono solo javascript o plugin. Puoi sviluppare il tuo plug-in Python e convincere le persone a scaricarlo ed eseguirlo, ma immagino che ricada sul "non all'interno del browser". categoria.

Intendi lato client?

Sicuro che puoi ! Ma devi prima installare Python sul client.

Il libro collegato descrive che per utilizzare gli script attivi sul lato client, è possibile testarlo con un semplice file html .

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

Nella vecchia versione citata in quel libro (programmazione Python su Win32  Di Mark Hammond, Andy Robinson) dice che è necessario installare le estensioni Python Win32 , e verrà automaticamente registra Python Active Scripting. Se lo fai manualmente, devi eseguire lo script python \ win32comext \ axscript \ client \ pyscript.py .

http://repl.it/ - Interprete Python in JavaScript in esecuzione sul lato client. Ci sono anche molte altre lingue. La fonte è disponibile con licenza MIT, il che è fantastico.

Ora puoi (2016) anche usare:

http://www.transcrypt.org

Compila Python 3.6 (incl. ereditarietà multipla, sovraccarico dell'operatore, tutti i tipi di comprensione, generatori e iteratori) per snellire e velocizzare JS, supporta il debug a livello di sorgente con mappe di origine e il controllo statico opzionale tramite mypy.

Disclaimer: sono l'iniziatore del progetto.

Per caso stavo ascoltando Hanselminutes dove ha parlato del progetto Gestalt . Questa è una soluzione per integrare linguaggi come IronRuby e IronPython nel browser tramite Silverlight.

Quindi penso che la risposta sia negativa se non hai plugin speciali.

Brython - " Un'implementazione di Python 3 per la programmazione web lato client "

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top