亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

硒等到顏色改變

硒等到顏色改變

白衣染霜花 2022-12-20 09:27:05
我需要我的代碼等到按鈕改變顏色。我使用了下面的代碼,但它有時會失敗,因為該項目不再可訪問(由于回發)。概述我正在嘗試做的事情:當我單擊網站上的保存按鈕時,在一段未知的時間內一切都變成灰色,然后使用 asp.net 回發。使用硒,我試圖等到按鈕不再是灰色并且回發已完成。判斷回發是否完成的唯一方法是顏色是否不再是灰色。代碼:def element_colour_check (self, locator, expected_color):    # loop to retry if element is still loading    for f in range(0,10)        try:            element = self.driver.find_element_by_id(locator)            hex_color = Color.from_string(element.value_of_css_property("background-color")).hex            #check to see if element is correct colour            if (hex_color == expected_color) == True:                return True            else:                sleep(1)                continue        except Exception as e:                          sleep(1)            continue    raise self.insert_error("Element did not change colour")調用函數:element_color_loading_check("save_btn", "#17a2b8")HTML:<input type="submit" name="save_btn" id=" save_btn " class="btn btn-info col-sm-12" value="Home">請注意,當按鈕為灰色時,類名不會改變
查看完整描述

1 回答

?
largeQ

TA貢獻2039條經驗 獲得超8個贊

Wait您應該使用專為這種情況設計的Selenium 。他們的自定義預期條件示例非常接近您所追求的。您甚至可以通過CSS 定位器( )使用presence_of_element_located預期條件By.CSS

您可以根據他們的示例將此邏輯更改為您自己的邏輯。

    if self.css_class in element.get_attribute("class"): 
           return element


查看完整回答
反對 回復 2022-12-20
  • 1 回答
  • 0 關注
  • 97 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號