每隔一段时间只打印一次语句(Python、Selenium)

每隔一段时间只打印一次语句(Python、Selenium),python,selenium,Python,Selenium,这里的问题是它每45秒给我大量的打印语句。在else语句为真之前,它怎么可能只给出一次“现在不可用,在可用之前重新加载站点…”语句 (用Python编写,Selenium) 谢谢你的帮助 您只需要更改代码的顺序,而不需要使用if..else语句。默认设置为“检查可用性…”,然后启动循环,循环每45秒刷新一次页面,直到指定的文本从driver.page\u source driver.get("Link of product site.") while "Not av

这里的问题是它每45秒给我大量的打印语句。在else语句为真之前,它怎么可能只给出一次“现在不可用,在可用之前重新加载站点…”语句

(用Python编写,Selenium)


谢谢你的帮助

您只需要更改代码的顺序,而不需要使用
if..else
语句。默认设置为“检查可用性…”,然后启动循环,循环每45秒刷新一次页面,直到指定的文本从
driver.page\u source

driver.get("Link of product site.")
while "Not available right now." in driver.page_source:
print("Not available right now, reloading site until it is available..")
driver.refresh()
sleep(45)

else:
print("It is available! Gonna order it now..")
如果它立即可用,它只需将这两个打印出来就可以了

driver.get("Link of product site.")
print("Checking availability...")
while "Not available right now." in driver.page_source:
    sleep(45)
    driver.refresh()
    

print("It is available! Gonna order it now..")
否则,它们之间会有时间延迟

如果要添加时间戳,以便了解可用时间的长短,请使用以下选项:

Checking availability...
It is available! Gonna order it now..

代码不起作用;它丢失了一些碎片;没有上下文。好吧,换一下。希望现在一切都清楚了。最好在刷新之前先睡觉,否则页面会在视觉上更新,但控制台输出会延迟。@Niloct。说得好。更新代码以反映感谢您的帮助!
import datetime

current_time = datetime.datetime.now()

driver.get("Link of product site.")
print("Checking availability...")
print(current_time)
while "Not available right now." in driver.page_source:
    sleep(45)
    driver.refresh()
    

print("It is available! Gonna order it now..")
print(current_time)