0
votes

Comment exécuter un script Python via une page Web?

J'ai un script python appelé test.py avec beaucoup de fonctions et de boucles qui génèrent des données brutes et j'essaie de l'exécuter à partir d'une page Web.

comme une étape initiale i préparé un code très simple ci-dessous à l'aide de la fiole pour voir si mon script fonctionne ou non.

Je m'attendais à rendre la sortie (certaines données brutes) sur la page Web, mais il semble que cela ne fonctionne pas pour moi, peut-être Je n'ai pas de bon départ pour cela.

En bref, la chose dont j'ai besoin est d'entrer à mon adresse de serveur et de voir la sortie de mon script.

oui si chaque chose va bien, je vais le développer pour obtenir des données d'entrée aussi. xxx


1 commentaires

Importer JSON en haut et retourner JSON.Dumps (test ()) dans la fonction dynamic_page et voir si cela aide


3 Réponses :


0
votes

Qu'est-ce que test exactement?

On dirait que vous essayez d'appeler votre module lorsque l'utilisateur visite l'itinéraire, vous devez appeler une fonction.

Si vous souhaitez exécuter une fonction spécifique lorsque l'utilisateur visite votre itinéraire de la fiole, Vous pouvez le faire comme ceci: xxx


3 commentaires

Cela suppose que le test est un module et non un script autonome. Dans la description de la question, le test est un script console qui génère simplement certaines données.


@ Rashid'lee'ibraim tu as raison, mon mal!


Oui, Test est un script comprenant plusieurs fonctions.



1
votes

Berk, les itinéraires de la fiole nécessitent un certain type de réponses (chaînes, tuples, instance de réponse, etc.) Vous pouvez en lire à leur sujet ici . Je suppose que votre fonction de test ne renvoie aucun de ces types requis. Ce que vous pouvez faire est JSON-Serialize du résultat de la fonction code> de test code> et de retourner comme une réponse à la fiole, et si ce n'est pas possible (en raison du type de valeur test code > Retours), puis l'imprimez simplement à la console. De cette façon, vous êtes toujours sûr que votre appel de fonction a fonctionné. Regardez le code ci-dessous:

from flask import Flask, redirect, url_for, request

import test

# Also import json
import json

app = Flask(__name__)

@app.route('/')

def dynamic_page():
   resp = test()
   try:
      resp = json.dumps(resp)
   except:
      print(resp)
      return "Function executed. Check your terminal"
   else:
      return resp

if __name__ == '__main__':
    app.run(debug=True)


2 commentaires

Il ne peut toujours pas exécuter le script (test).


Si ce n'est pas alors que voyez-vous lorsque vous visitez le point de terminaison / ? Avez-vous une erreur? Si oui, quelle est l'erreur?



0
votes

De ce que je comprends, vous voulez appeler Python de votre navigateur.

Si c'est le cas, vous pouvez simplement envoyer un AJAX obtenir une demande code> à votre route et que cette fonction fonctionnera. p> xxx pré>

Ajoutez la fonction d'itinéraire suivante: p> xxx pré>

lorsque vous exécutez le JavaScript dans votre navigateur Ajax Envoie un Code> Demande à la route de la fiole qui sortira: P> xxx pré>

dans votre terminal, il enverra alors: P>

All finished here!


1 commentaires