因此,有一个由javascript生成的网站。并每秒更新一次。我想每秒获取值。但是该站点将弹出一个模式消息,询问“您还在这里”。然后,您需要单击按钮。首先,我的代码如下:
try:
button = browser.find_elements_by_xpath("//button[contains(@value, 'Refresh Page')]");
button.click()
rounds = rounds+1
except:
rounds = rounds+1
但是当我查看浏览器时,它仍然会在每轮重新加载,即使它没有显示在屏幕上。
我如何才能做到这一点,使其仅在屏幕上单击按钮?谢谢!
答案 0 :(得分:1)
浏览以下代码,在按钮可用且可见后单击该按钮以刷新页面
button = browser.find_elements_by_xpath("//button[contains(@value, 'Refresh Page')]");
//To check button is present on page
if (len(button)>0):
//And is displayed
if button[0].is_displayed():
button[0].click()
else:
print "button not display"
else:
print("there is not refresh page button")
OR
// to check the dialog present here "show" is the class which retain by the div once the refresh button get enabled
if "show" in browser.find_element_by_id('timeout_dialog').get_attribute('class'):
browser.find_element_by_xpath("//button[contains(@value, 'Refresh Page')]").click()
else:
print "refresh button not displaying"
注意:按照python进行语法更正