Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/88.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
Jquery python selenium如何最好地检测闪烁文本?_Jquery_Python_Selenium - Fatal编程技术网

Jquery python selenium如何最好地检测闪烁文本?

Jquery python selenium如何最好地检测闪烁文本?,jquery,python,selenium,Jquery,Python,Selenium,我试图检测是否存在由以下jquery导致闪烁的文本(无论可见性如何,底层文本): /* Blink thingy*/ $('.blink').each(function() { var elem = $(this); setInterval(function() { if (elem.css('visibility') == 'hidden') { elem.css('visibility', 'visible');

我试图检测是否存在由以下jquery导致闪烁的文本(无论可见性如何,底层文本):

    /* Blink thingy*/
$('.blink').each(function() {
    var elem = $(this);
    setInterval(function() {
        if (elem.css('visibility') == 'hidden') {
            elem.css('visibility', 'visible');
        } else {
            elem.css('visibility', 'hidden');
        }    
    }, 500);
});
到目前为止,我在以下方面未获得成功:

UpdateTaskCompleteElement = driver.find_element_by_xpath("/html/body/div[3]/h3/span")

在眨眼之间捕捉信息的最佳方式是什么? python或selenium中是否有可以解决此问题的函数


我曾试图将python放入一个循环中,让它运行十次,但我认为这只会减少运行的机会,我仍然需要偶尔重新运行脚本{这是一个长脚本:(}。

关于
通过css\u选择器(“闪烁”)查找元素怎么样
?JQuery不会更改文本,只会更改文本是否可见


由于答案相去甚远,没有其他人发布更好的答案,下面是我的循环测试。我不太喜欢这个,但它确实有效

ExpectedUTCMessage = "Whatever the message should be."
UpdateTaskCompleteElement = driver.find_element_by_xpath("/html/body/div[3]/h3/span")


BlinkDetectLoopPass = False
for BlinkChecknum in range(0,20): # I'm using 20 loops because I have seen as many as 9 failed attempts

    UpdateTaskCompleteMessage = UpdateTaskCompleteElement.text

    if UpdateTaskCompleteMessage == ExpectedUTCMessage:
        BlinkDetectLoopPass = True
        break
    else:
        #Just displaying the failed detections, don't really need this else
        print("\nUpdate Task Complete Message missed blink check #" + str(BlinkChecknum + 1) + ".\n")

if BlinkDetectLoopPass:
    #Success Handling
else:
    #Error Handling

请发布更好的内容,谢谢!!!

在这种情况下,更好的方法是:


每半秒检查元素中是否存在
ExpectedUTCMessage
文本将等待10秒。

您需要检查它是否正在闪烁,还是只获取底层文本而不考虑可见性?。只获取底层文本而不考虑可见性。我在查找el时没有遇到任何问题事实上,只是文本有时是空的。因为它工作了大约一半的时间,我假设只是眨眼使它变空(不可见)。
ExpectedUTCMessage = "Whatever the message should be."
UpdateTaskCompleteElement = driver.find_element_by_xpath("/html/body/div[3]/h3/span")


BlinkDetectLoopPass = False
for BlinkChecknum in range(0,20): # I'm using 20 loops because I have seen as many as 9 failed attempts

    UpdateTaskCompleteMessage = UpdateTaskCompleteElement.text

    if UpdateTaskCompleteMessage == ExpectedUTCMessage:
        BlinkDetectLoopPass = True
        break
    else:
        #Just displaying the failed detections, don't really need this else
        print("\nUpdate Task Complete Message missed blink check #" + str(BlinkChecknum + 1) + ".\n")

if BlinkDetectLoopPass:
    #Success Handling
else:
    #Error Handling
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

wait = WebDriverWait(driver, 10)
wait.until(EC.text_to_be_present_in_element((By.XPATH, "/html/body/div[3]/h3/span"), ExpectedUTCMessage))