Wie kann ich ein Python-Skript in HTML ausführen?

Lesezeit: 5 Minuten

Benutzer-Avatar
Ann

Derzeit habe ich einige Python-Dateien, die eine Verbindung zu einem herstellen SQLite Datenbank für Benutzereingaben und führen Sie dann einige Berechnungen durch, die die Ausgabe des Programms festlegen. Ich bin neu in der Python-Webprogrammierung und möchte wissen: Was ist die beste Methode, um Python im Web zu verwenden?

Beispiel: Ich möchte meine Python-Dateien ausführen, wenn der Benutzer auf eine Schaltfläche auf der Webseite klickt. Ist es möglich?

Ich begann mit Django. Aber es braucht etwas Zeit zum Lernen. Und ich sah auch etwas namens CGI Skripte. Welche Option sollte ich verwenden?

  • Bitte überprüfen Sie diesen Link:-stackoverflow.com/questions/7460938/…

    – Razia Sultaninen

    28. November 2016 um 13:07 Uhr

  • Das vorgeschlagene Duplikat ist So führen Sie ein Python-Skript auf einer Webseite aus.

    – Peter Mortensen

    29. Mai um 16:58 Uhr

Benutzer-Avatar
Integration_Beast

Sie können eine Python-Datei mithilfe von HTML ausführen PHP.

Fügen Sie eine PHP-Datei hinzu als index.php:

<html>
<head>
<title>Run my Python files</title>
<?PHP
echo shell_exec("python test.py 'parameter1'");
?>
</head>

Übergabe des Parameters an Python

Erstellen Sie eine Python-Datei als test.py:

import sys
input=sys.argv[1]
print(input)

Gibt den von PHP übergebenen Parameter aus.

  • Sauber! Um Leerzeichen in Ihrem Argument zu unterstützen, versuchen Sie stattdessen Folgendes: echo shell_exec("python test.py \"Parameter 1\"");

    – Professor Drache

    30. April 2020 um 2:22 Uhr


  • Hier fehlt eine Menge Kontext (z. B. Voraussetzungen). Auf irgendeinem Linux-Server irgendwo? Wo? Läuft lokal? Auf einem Linux-Rechner? Sind sowohl der PHP- als auch der Python-Interpreter installiert? Wo und mit welchen Versionen wurde das getestet? Bitte antworten Sie, indem Sie Ihre Antwort bearbeiten (ändern), nicht hier in den Kommentaren (ohne “Bearbeiten:”, “Aktualisieren:” oder ähnliches – die Antwort sollte so aussehen, als wäre sie heute geschrieben).

    – Peter Mortensen

    29. Mai um 16:34 Uhr


Benutzer-Avatar
abakeln

Es würde wahrscheinlich davon abhängen, was Sie tun möchten. Ich persönlich verwende CGI und es könnte einfacher sein, wenn Ihre Eingaben von der Webseite einfach sind, und es dauert weniger Zeit, es zu lernen. Hier sind einige Ressourcen dafür:

Möglicherweise müssen Sie jedoch noch einige Konfigurationen vornehmen, damit es das Programm ausführen kann, anstatt es anzuzeigen.

Hier ist ein Tutorial dazu: Apache-Tutorial: Dynamischer Inhalt mit CGI

  • Vielen Dank für Ihre Antwort. Ich bin das Beispiel durchgegangen und es ist etwas Ähnliches, nach dem ich suche. Aber gibt es eine Verzeichnisstruktur, der ich folgen muss, um meine Dateien zu behalten? Wie kann ich Dateien ausführen? Bitte klären Sie.

    – Ann

    29. November 2016 um 9:54 Uhr

  • Ich habe alle meine CGI-Programme in einem Verzeichnis (cgi-bin) und dieses Verzeichnis so konfiguriert, dass die Programme ausgeführt werden. Ich werde bearbeiten, um einen Link zum Tutorial hinzuzufügen.

    – Abakkel

    29. November 2016 um 12:24 Uhr

  • Danke vielmals. Ich fing an, Programme in CGI auszuführen.

    – Ann

    2. Dezember 2016 um 14:17 Uhr


  • Kein Problem! Viel Glück!

    – Abakkel

    3. Dezember 2016 um 3:01 Uhr

  • @AndrewAnderson Ja, ich denke schon

    – Abakkel

    12. Oktober 2021 um 12:54 Uhr

Benutzer-Avatar
Danny Cullen

Wenn Ihr Webserver ist Apache du kannst den … benutzen
mod_python -Modul, um Ihre Python-CGI-Skripte auszuführen.

Zum nginxkönnen Sie verwenden mod_wsgi.

  • Das Projekt mod_python ist schon lange tot und sollte nicht für etwas Neues verwendet werden. Die Option für Apache, nicht nginx, wie Sie es haben, ist mod_wsgi, aber die Google Code-Site ist eine alte Site, die nicht mehr verwendet wird modwsgi.org stattdessen.

    – Graham Dumpleton

    29. November 2016 um 11:59 Uhr


Benutzer-Avatar
Aray Karjauv

Dank an WebAssembly und die Pyodid project ist es nun möglich, Python im Browser auszuführen. Kasse mein Tutorial darauf.

const output = document.getElementById("output")
const code = document.getElementById("code")

function addToOutput(s) {
    output.value += `>>>${code.value}\n${s}\n`
    output.scrollTop = output.scrollHeight
    code.value=""
}

output.value="Initializing...\n"
// Init pyodide
languagePluginLoader.then(() => { output.value += 'Ready!\n' })

function evaluatePython() {
    pyodide.runPythonAsync(code.value)
        .then(output => addToOutput(output))
        .catch((err) => { addToOutput(err) })
}
<!DOCTYPE html>

<head>
    <script type="text/javascript">
        // Default Pyodide files URL ('packages.json', 'pyodide.asm.data', etc.)
        window.languagePluginUrl="https://pyodide-cdn2.iodide.io/v0.15.0/full/";
    </script>
    <script src="https://pyodide-cdn2.iodide.io/v0.15.0/full/pyodide.js"></script>
</head>

<body>
    Output:
    </div>
    <textarea id='output' style="width: 100%;" rows="10" disabled></textarea>
    <textarea id='code' rows="3">
import numpy as np
np.ones((10,))
    </textarea>
    <button id='run' onclick='evaluatePython()'>Run</button>
    <p>You can execute any Python code. Just enter something
       in the box above and click the button.
       <strong>It can take some time</strong>.</p>
</body>

</html>

Benutzer-Avatar
Aidas

Es gibt ein neues Werkzeug, PyScriptwas dafür hilfreich sein könnte.

Offizielle Website

GitHub-Repository

  • Die Beispiele in diesem GitHub-Repository sind aktiv verfügbar, um sie online auszuprobieren pyscript.net/examples .

    – Wayne

    9. Mai um 15:07 Uhr

  • Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile der Antwort hier einzufügen und den Link als Referenz bereitzustellen. Nur-Link-Antworten können ungültig werden, wenn sich die verlinkte Seite ändert. – Aus Bewertung

    – Emi OB

    12. Mai um 15:13 Uhr

  • Auch dieses Projekt basiert auf Pyodid

    – Aray Karjauv

    29. Mai um 19:14 Uhr

Benutzer-Avatar
Peter Mortensen

Sie können Python-Code nicht direkt ausführen

Sie dürfen verwenden Python in HTML.

Oder für drinnen PHP Dies:

http://www.skulpt.org/

  • Die Beispiele in diesem GitHub-Repository sind aktiv verfügbar, um sie online auszuprobieren pyscript.net/examples .

    – Wayne

    9. Mai um 15:07 Uhr

  • Während dieser Link die Frage beantworten kann, ist es besser, die wesentlichen Teile der Antwort hier einzufügen und den Link als Referenz bereitzustellen. Nur-Link-Antworten können ungültig werden, wenn sich die verlinkte Seite ändert. – Aus Bewertung

    – Emi OB

    12. Mai um 15:13 Uhr

  • Auch dieses Projekt basiert auf Pyodid

    – Aray Karjauv

    29. Mai um 19:14 Uhr

Benutzer-Avatar
Peter Mortensen

Das sollten Sie ausprobieren Flasche oder Django Rahmen. Sie werden verwendet, um Python und HTML zu integrieren.

1017250cookie-checkWie kann ich ein Python-Skript in HTML ausführen?

This website is using cookies to improve the user-friendliness. You agree by using the website further.

Privacy policy