Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/ssl/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用selenium/python监控实时时钟_Python_Selenium - Fatal编程技术网

使用selenium/python监控实时时钟

使用selenium/python监控实时时钟,python,selenium,Python,Selenium,我正在编写一个selenium脚本,以便在一天中的特定时间执行表单填充 我目前使用Python的schedule模块安排表单填充,但是这会占用我的系统时间。问题是我的系统时间与网站服务器时间不同步。幸运的是,该网站在页面中有一个实时时钟 我检查了时钟元件,如下所示: 时间是:下午5:24:59 我想做的是监控网站上的实时时钟,当它到达某个特定时间时执行一个动作——我在想一个“while循环” 比如: while true: t = "jquery_server_clock" if

我正在编写一个selenium脚本,以便在一天中的特定时间执行表单填充

我目前使用Python的schedule模块安排表单填充,但是这会占用我的系统时间。问题是我的系统时间与网站服务器时间不同步。幸运的是,该网站在页面中有一个实时时钟

我检查了时钟元件,如下所示:

时间是:下午5:24:59

我想做的是监控网站上的实时时钟,当它到达某个特定时间时执行一个动作——我在想一个“while循环”

比如:

while true:
    t = "jquery_server_clock"
    if t = "6:00:00 PM"
        driver.find_element_by_name("submit").click()
此时,我似乎无法将时钟时间转换为变量进行监控。在我得到它之后,我确信我可以让while循环工作


谢谢你的帮助

在while循环中,您必须获得包含时间的跨度,例如

time\u element=driver.find\u elements\u by\u class\u namejquery\u server\u clock

然后你可以把时间作为一个字符串

时间元素。获取属性“文本”

然后,您可以将其转换为DateTime对象,然后只需检查时间是否大于或等于6点钟的DateTime。

根据您提供的HTML,要监视网站上的实时时钟并在特定时间(例如6:00:00 PM)执行@测试,您可以使用以下解决方案:

myElem = driver.find_element_by_xpath("//span[contains(.,'The Time is:')]").get_attribute("innerHTML")
if "6:00:00 PM" in myElem
    driver.find_element_by_name("submit").click()

这个问题的可能重复之处在于它占用了我的系统时间。不是网站上的时间。不幸的是,我的系统时间和网站时间不同步。通过监控网站上的实时时钟,我可以确保它在正确的时间被点击。如果你只找到网站服务器的时区,这可以简化。添加或减去您的时区和Web服务器时区之间的差异,并相应地调整触发时间。持续监控页面上的实时时钟似乎有点浪费