Python Script über Browser starten Raspberry Pi?
Hallo,
Ich habe folgendes Problem:
Ich hoste mit meinem Raspberry einen Webserver im lokalen Netzwerk, gebe also im Browser die IP ein und komme auf die Startseite die in /var/www/html/startseite.html hinterlegt ist. Soweit so gut.
Ich habe jetzt noch ein Python Script "camera.py", dass bei Ausführung ein Foto macht und speichert (wo ist im Prinzip egal)
Ich möchte dieses Script im Browser aufrufen, bzw. im Browser ein PHP Script aufrufen, dass Python Script startet.
Also z.B. 10.1.10.100/machefoto.php
Und mein Pi macht ein Foto.
Ich habe einige Wege im Internet gefunden, aber keiner davon funktioniert bei mir. Es entsteht zwar kein Fehler, ein Bild aber genauso wenig.
Wie muss mein PHP Script aussehen und wo muss es sein?
Wo muss mein Python Script sein?
Welche Berechtigungen (und wie) muss ich hinzufügen?
Wie bereits erwähnt alles auf einem Raspberry Pi 3B+ der im lokalen Netzwerk ist. Raspbian OS (Linux)
Danke für Antworten im Voraus
3 Antworten
<?php
$output = shell_exec('/usr/bin/python3.6 /pfad/zum/script');
echo $output;
Erwartet dein Script irgendwelche Parameter? Ist das überhaupt für Python 3 ausgelegt oder Python 2?
Mein Script ist in Python 3. Alles was es macht ist ein Foto über die RaspberryPi Kamera. Das Script manuell ausgeführt funktioniert einwandfrei
Danke, ich hatte immer ein ähnliches Script, ich werde Mal schauen ob das den Unterschied macht :)
Ich hatte bei einem ähnlichen Script mal das Problem mit den Rechten. Da ich nicht wollte das der Webserver zu viele rechte hat, hab ich meiner PHP Datei gesagt sie soll eine Textdatei beschreiben und ein extra Script liest die Datei aus und gibt die werte an mein zielscript. Gibt garantiert auch elegantere Lösungen allerdings war das das leichteste und sicherste was mir damals eingefallen ist. Ggf könnte das für dich hilfreich sein.
mittels cgi kannst du solche scripte ausführen.
Im Browser wird folgendes angezeigt
"*failed to open vchiq instance"