Est-il possible d'utiliser des fichiers exécutables avec Django? Par exemple j'ai un formulaire Django qui prend en entrée un fichier. Je veux passer le fichier en tant qu'argument à un script/exécutable/programme et renvoyer les résultats avec django. Quel serait un bon point de départ pour cette idée? Merci beaucoupfichiers exécutables et django
Répondre
La question que vous devriez vous poser est possible en python. Essentiellement, tout ce que vous auriez besoin de le faire prend les entrées, dans un script python que vous pouvez appeler depuis votre vue django ou autre. Une fois là exécutez la commande subprocess d'exécution avec votre exécutable, et prenez dans les résultats. :)
Goodluck.
"est-ce possible en python". Vrai - la question concerne le langage Python, pas Django le framework. Cependant, c'est une question * inutile * à poser. Tout est possible en Python - la question est de savoir combien de travail, combien de risques et combien de trous de sécurité. –
Oui, vous pouvez le faire. Il y a plusieurs façons de le faire en Python. Si vous voulez lire la sortie et l'utiliser, alors vous voulez probablement popen, trouvé à http://docs.python.org/library/os.html#os.popen
Attention, cela peut être très dangereux. Si les données ajoutées à la ligne de commande sont malveillantes (même accidentellement), vous risquez de provoquer de mauvaises choses sur le serveur. Vous donnez effectivement aux personnes qui soumettent des formulaires la possibilité d'exécuter des commandes sur le serveur avec les mêmes autorisations que le serveur Web.
import os
ls_fd = os.popen('ls -l /tmp')
output = ls_fd.read()
ls_fd.close()
De cette façon, votre fichier ls_fd est un objet similaire à un fichier. vous lisez() comme un fichier. Vous ne pouvez le faire qu'une seule fois, alors vous êtes à la fin du fichier. De même, vous devriez .close() quand vous avez terminé.
Considérons fortement l'ajout d'une entrée utilisateur à la ligne de commande. Vous pouvez créer une liste d'options possibles, puis donner à l'utilisateur le choix qu'il souhaite. Ensuite, au lieu de prendre l'entrée de l'utilisateur et de l'ajouter à la fin de la ligne de commande, vous pouvez utiliser l'une de vos lignes de commande préconfigurées et l'exécuter.
Je ne souhaite pas utiliser l'entrée pour la ligne de commande. Je veux le passer en argument à une application. – Bigdinrock
si vous l'ajoutez comme un argument alors il fait toujours partie de la ligne de commande et doit être traité avec précaution. Par exemple: cmd = 'ls -l% s'% arg – newz2000
voulez-vous des choses comme ça?
>>> import commands
>>> commands.getstatusoutput('pwd')
(0, '/home/efazati')
oui quelque chose comme ça mais pas avec une commande unix standard comme pwd mais avec un script personnalisé comme ./myscript – Bigdinrock
@Bigdinrock son terminal ... vous pouvez utiliser tout – Efazati
- 1. Cocoa et fichiers exécutables
- 2. Fichiers exécutables
- 3. taille des fichiers exécutables?
- 4. Fichiers CMakeLists.txt pour plusieurs bibliothèques et exécutables
- 5. Recherche de fichiers exécutables à l'aide de ls et grep
- 6. Les fichiers exécutables JAR s'exécutent très lentement
- 7. Fichiers log4j non exécutables - Websphere 7, Windows
- 8. gérer l'emplacement des fichiers exécutables dans MinGW
- 9. Fichiers exécutables obfusqués avec différents chiffreurs
- 10. Création de fichiers exécutables sous Linux
- 11. Création de fichiers Jar exécutables. (Java.lang.NoClassDefFoundError)
- 12. Rechercher des fichiers exécutables sans extensions?
- 13. JavaScript et fonctions auto-exécutables
- 14. Enregistrement django et fichiers CSS
- 15. make file plusieurs exécutables
- 16. NetBeans & JAR exécutables
- 17. Pourquoi certains exécutables et bibliothèques référencent-ils des fichiers PDB et d'autres non
- 18. Configurer Apache pour exécuter les fichiers exécutables ELF
- 19. créer deux fichiers exécutables pour le même projet?
- 20. étrange erreur dans les fichiers exécutables en cours d'exécution (linux)
- 21. Comment mettre vos fichiers exécutables dans un répertoire bin/Debug
- 22. doute en ce qui concerne les fichiers exécutables sous Linux
- 23. Comment empêcher iostreams :: mapped_file_sink de créer des fichiers txt exécutables
- 24. Connexion des files d'attente JMS dans les fichiers JAR exécutables
- 25. bzr ignorer pour tous les fichiers exécutables sous Linux
- 26. comment faire des fichiers exécutables en utilisant jre 1.5?
- 27. Commande Linux Redhat Exécution via des fichiers exécutables
- 28. Appel des fichiers exécutables à partir de JSP
- 29. C# SetParent et Modal sur différents exécutables
- 30. Chemin d'accès et arguments exécutables divisés
Que signifie "exécutable" signifie ici? Binaire? Scénario? Que veux-tu dire exactement? En outre, comment allez-vous empêcher les problèmes de sécurité sans fin que cela représente? –
Par exécutable, je veux dire une application comme l'exemple suivant: Je prends une image/fichier en entrée passer l'image/fichier comme un argument à l'application et modifier l'image. – Bigdinrock
Donc, "fichiers exécutables avec Django" signifie un script ou un code Python qui fonctionne? Tout script ou code Python peut être utilisé avec le Python qui fait partie de Django. Qu'est-ce que ** exactement ** vous fait perdre à propos de l'écriture de code Python pour cela? –