使用Selenium Webdriver定期更新内容

Abh*_*Das 6 javascript python selenium webdriver selenium-webdriver

例如,聊天网站" 聊天"总是在其主页上显示当前在线用户数,我可以使用HTMLUnitSelenium中的无头Webdriver 通过此python脚本提取:

from selenium import webdriver    
driver = webdriver.Remote(desired_capabilities=webdriver.DesiredCapabilities.HTMLUNITWITHJS)
driver.get('http://www.omegle.com/')
element = driver.find_element_by_id("onlinecount")
print element.text.split()[0]
Run Code Online (Sandbox Code Playgroud)

输出如下:

22,183
Run Code Online (Sandbox Code Playgroud)

这个数字是由脚本定期动态生成和更新的,我希望每隔一段时间只读取这个动态更新的内容,而不必重复加载整个页面driver.get.什么Selenium Webdriver方法或功能可以让我这样做?

这篇文章似乎是一个相关的领导者,尽管它现在引领着我.

mun*_*unk 7

这是未经测试的,但我认为以下可能有效:

from selenium import webdriver    
from time import sleep
driver = webdriver.Remote(desired_capabilities=webdriver.DesiredCapabilities.HTMLUNITWITHJS)
driver.get('http://www.omegle.com/')
interval = 10  #or whatever interval you want
while True:
    element = driver.find_element_by_id("onlinecount")
    print element.text.split()[0]
    sleep(interval)
Run Code Online (Sandbox Code Playgroud)

我想如果你在改变之后找到了元素,它会给你新的价值.