Python Selenium不断检查页面源中的短语

时间:2016-02-20 22:03:49

标签: python selenium selenium-webdriver

我是使用Python的新手。我正在尝试使用Selenium编写脚本,打开Firefox浏览器并检查页面源中是否有特定的短语。

到目前为止,我有这个......

from selenium import webdriver
driver = webdriver.Firefox()
driver.get('http://www.example.com/')
current_page_source = driver.page_source
print(current_page_source)

if "my phrase" in current_page_source :
    print ("Phrase Is Present")
else:
    print ("Phrase Is Not Present")

这很好用,但我希望每30秒继续检查一次。

我是否需要使用for循环来实现此目的?

1 个答案:

答案 0 :(得分:1)

为了每30秒运行一次代码,您需要两件事:

  1. 您需要创建30秒的延迟。最简单的方法是使用time模块创建延迟。例如:

    import time
    # some code
    time.sleep(30) # delays for 30 seconds
    
  2. 您需要重复此操作。最简单的方法是使用一个检查条件的while循环。例如:

    keep_running = True
    
    while(keep_running):
        # your repeatable code
    

    这样你以后可以在while循环中的代码中设置一些逻辑,可以将keep_running变量设置为False,从而结束循环(例如,一旦找到你正在寻找的文本1000次,或者如果按下按钮等)。