Beim Steuern von WebIOPi durch den API habe ich einige Zeit damit verbracht, einen möglichen Zugriff von Python auf den REST-API zu realisieren. Der erste Versuch mit urllib2 brachte keinen gewünschten Erfolg. Deshalb entschied ich mich per httplib2 einen HTML-POST Befehl zu initiieren.
Das folgende Beispiel beschreibt ein Python-Script, welches abhängig vom Zustand am Ausgang ein LED, am GPIO 25, Toggelt.
from httplib2 import Http
import urllib2
h = Http()
url = 'http://raspberrypi:8000/GPIO/25/value' #raspberrypi durch die jeweilige IP-Adress ersetzten und ggf. den Port von WebIOPi anpassen 
response = urllib2.urlopen(url).read()
if response == '1':
        h.request("http://raspberrypi:8000/GPIO/25/value/0", "POST")
else:
        h.request("http://raspberrypi:8000/GPIO/25/value/1", "POST")
Anschlussplan am Raspberry Pi:

Schreibe einen Kommentar