Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
import urllib2
from contextlib import closing
import json
n = 0
while n <= 5:
n = n + 1
url = "http://192.168.xxx.xxx/report"
with closing(urllib2.urlopen(url)) as response:
j = json.load(response)
relay = j["relay"]
power = j["power"]
if j["relay"] == "False":
url = "http://192.168.xxx.xxx/relay?state=1"
urllib2.urlopen(url).read(1000)
print relay
print power
else:
print "bereits AN"
break
@sa_ve: Du solltest immer mit 4 Leerzeichen pro Ebene einrücken. So wie jetzt ist es einfach zu schlecht lesbar. Statt einer while-Schleife ist eine for-Schleife hier besser. "relay" ist ein Boolean, mit einem String zu vergleichen, macht keinen Sinn, und statt explizit auf False zu vergleichen ist "not" besser. Und welchen Wert möchtest Du wie auswerten?
Ich wollte nur mal so nebenbei die `requests`-Bibliothek ins Gespräch bringen. Die hat eine schönere API als das `urllib`/`urllib2`-Gespann aus der Standardbibliothek.