Vous pouvez y arriver de différentes manières en utilisant CGI ou un autre script côté serveur. Un problème sera les autorisations d'accès aux broches GPIO. Il ne semble pas y avoir de solution propre . Actuellement, il peut être plus facile de montrer les fichiers gpio à l'utilisateur qui exécute le serveur Web, d' appeler un programme (suid) qui peut accéder aux broches ou d'avoir un démon distinct avec accès aux broches auxquelles vous pouvez envoyer des messages (signal, pipe / socket, autre ipc ...).
Pour « l' exécution d' un script python via une interface web », vous voudrez peut - être regarder web.py . C'est un petit module très soigné qui vous permet d'écrire un "service web" autonome sur un seul fichier qui pourrait faire n'importe quoi. Très pratique pour ce genre de chose IME. Ne nécessite effectivement aucune configuration ni logiciel spécial (à part l'installation Python courante et web.py lui-même). Il suffit d'écrire des gestionnaires d'URL en python, éventuellement avec des modèles html et d'exécuter. Pointez un client (navigateur, autre script, wget ..) sur le bon port et cela fonctionne. :)
Edit: Un nouveau projet repéré, serpint semble permettre de faire bouger gpio depuis une socket ou éventuellement une fausse interface de périphérique char.
Si vous débutez avec le développement web, jetez un œil à Bouteille . La bouteille est plus simple que le flacon dans le sens où il s'agit d'un framework web complet dans un seul fichier. En revanche, Flask vise à réutiliser le code sonore de différentes bibliothèques et pourrait donc être plus solide, mais aussi plus complexe.
Voici le Hello World with Bottle:
Exécutez-le avec:
Et ouvrez dans un navigateur:
http://localhost:8080/hello/world
Pour rendre votre site Web accessible à partir d'autres ordinateurs, définissez
host
sur0.0.0.0
dans larun
méthode. La dernière ligne du Hello World ci-dessus devrait alors se lire:Vous devriez maintenant pouvoir accéder à votre site Web via l'adresse IP du Pi, comme ceci:
http://192.168.0.123:8080/hello/world
Voir la documentation de la bouteille sur le déploiement pour plus de détails.
la source
curl http://localhost:8080/hello/world
je reçois les résultats attendus. Cependant, je veux pouvoir y accéder sur mon ordinateur habituel via le réseau local. Après avoir utiliséifconfig
mon adresse IP, l'URL suivante sur mon ordinateur régulier ne peut pas établir une connexion:http://192.168.1.102:8080/hello/matthew
. Je peux accéder à une autre page Web que j'ai créée à ` 192.168.1.102/home.php '. Auriez-vous une idée sur la façon dont je peux à ma page de bouteille?0.0.0.0
que la bouteille écoute sur n'importe quelle adresse , y compris les Pi.Installez iPython Notebook.
Exécutez-le ensuite:
Bibliographie:
http://ipython.org/
http://jupyter.org/
https://www.raspberrypi.org/documentation/usage/gpio-plus-and-raspi2/
http://maxembedded.com/2014/07/ using-raspberry-pi-gpio-using-python /
Youtube: https://www.youtube.com/watch?v=cJuF4IDMuLY
Très important:
La musique s'exécute sur RPi en arrière-plan dans le programme d'écran linux sur mps-youtube.
Bonne chance!
la source
Voici un tutoriel sur la façon dont cela peut être réalisé: https://roderickvella.wordpress.com/2017/01/04/control-a-separate-running-script-from-a-web-server-python-rpi/
la source