【发布时间】:2011-05-18 08:04:49
【问题描述】:
所以我正在尝试这样做(访问网站上的文件,读取其内容并执行操作,直到内容说退出。前提是它必须等待 x 秒才能再次访问该网站;重新检查内容):
perform = True
while(perform):
data = urllib.urlopen('someurl')
data = data.read()
if(data == '0'):
dosomething()
elif(data == '1'):
#1 signifies to exit the loop
perform = False
else:
time.sleep(10)
但是,这似乎永远不会奏效。 'Someurl' 总是有价值的。一些谷歌说这与睡眠功能有关。请帮忙!
【问题讨论】:
-
如果你每十毫秒攻击一次服务器,它很可能会在几秒钟内完全阻止你(或者允许合理的连接延迟,在它决定你是害虫)。然后你会得到一个 503 或类似的东西。慢点。
-
@Chris Morgan:在 Python 中,time.sleep 的参数以秒为单位,而不是毫秒(并且可能是浮点数)。无论如何,至少在 2.x 中。
-
@Karl:是的。我自己从来没有使用过
time.sleep,并且已经习惯了在其他语言中以毫秒为单位工作的事情,我没想到它会使用不同的单位。 -
@Chris:来自 Python 文档:
time.sleep(secs):暂停执行给定的秒数,所以不是毫秒,而是秒。
标签: python sleep while-loop