【发布时间】:2018-11-17 08:33:56
【问题描述】:
在 5 分钟的暂停后,我正在摸索如何进行最后一次检查,看看我是否已经恢复了足够的生命值来继续或没有。我将在下面发布当前循环:
它应该执行的顺序如下:开始狩猎没有问题>它知道它当前有多少生命值>当低于8000生命值时它将暂停5分钟>但不会检查是否高于8000生命值暂停后继续 > 如果没有超过它应该继续等待。
while health >= 8000:
health = letBattle()
if health <= 8000:
driver.get("https://s3-en.bitefight.gameforge.com:443/profile/index")
print("////// RESTING FOR 5 MINUTES TO RECOVER! //////")
time.sleep(300)
#ADD HEALTH CHECK
driver.get("https://s3-en.bitefight.gameforge.com:443/profile/index") #Refresh HP
else:
print("------FINDING NEW PREY!------")
在#ADD HEALTH CHECK 下是我然后刷新浏览器以查看新更新的健康状况...但它只是结束并且不会循环。虽然高于 8000 生命值,但它知道继续一遍又一遍地狩猎,这很棒......但是当它在低于 8000 生命值时触发暂停时,它什么也不做,它完全停止而不是继续等到它再次高于 8000 生命值来保持无限运行。
提前感谢您对我的问题的帮助/洞察
【问题讨论】:
-
鉴于您发布的内容,很难知道代码的详细信息,但是您是否尝试过使用
while health <= 8000:而不是if health <= 8000:? -
我将编辑并发布完整的代码。我不确定具体更改是否会有所帮助
-
您确实需要真正捕获
driver.get的结果 并重新解析输出吗?
标签: python selenium automation