urllib2无法发送GET请求

时间:2016-01-02 00:19:29

标签: python-3.x

我正在尝试创建一个python脚本来控制我家中的热水锅炉。我有一个网页运行,它将更新我的服务器上的文本文件0或1,具体取决于网站上的按钮开/关选择。下面的Python脚本可以读取这一切,并根据文本文件的值打开LED。 我希望脚本在打开时等待,然后将GET URL发送到我的网站以更新文本文件并关闭LED。这部分不起作用。 我可以在网站上执行此操作,但想知道如何从python脚本发送GET请求以供将来改进。我是python的新手,所以任何帮助都会非常感激。



import urllib2
import wiringpi2
import time

##URL set up URL 1 reads test file on server url2 upload GET/URL tell server to turn water off
url = "http://mywebsite.com/watercontrol.txt"
url2 = "http://mywebsite.com/waterpage,php?status=0"

wiringpi2.wiringPiSetupGpio()
wiringpi2.pinMode(17,1)  ##boiler control

def delay ():
	time.sleep(1)
	readWeb()
	time.sleep(1)
	readWeb()
	urllib2.urlopen(url2).read()
def waterOn ():
	wiringpi2.digitalWrite(17,1)
	delay()
def waterOFF ():
	wiringpi2.digitalWrite(17,0)
def readWeb ():
	relaystatus = urllib2.urlopen(url).read(1)
	if relaystatus == "1"
		waterOn()
	elif relaystatus == "0"
		waterOFF ()
	time.sleep(2)
while 1:
	readWeb()




1 个答案:

答案 0 :(得分:0)

我意识到自己的错误。在延迟中调用readWeb()导致循环返回onWater然后返回延迟。这导致我陷入困境。 我改变了这个并且它有效