如何以十六進制格式定位webelement的背景顏色?用我當前的硒webdriver python代碼,它返回RGB格式的背景色。如何使用Selenium WebDriver與python獲取Web元素的顏色?
這是我在看
div class="bar" style="background-color: #DD514C; background-image: -moz-linear-gradient(center top , #EE5F5B, #C43C35); background-image: -webkit-linear-gradient(top , #EE5F5B, #C43C35); background-image: -ms-linear-gradient(top , #EE5F5B, #C43C35); filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#EE5F5B, endColorstr=#C43C35, GradientType=0); background-repeat: repeat-x; color: #ffffff; width: 11.5%"
我webdriver的Python代碼的HTML元素:
find_element_by_class_name("bar").get_attribute("style")
它與RGB格式的顏色返回風格。我想專門獲取十六進制格式的背景顏色,以便我可以將其與我的預期值進行比較。我現在得到以下的輸出:
background-color: rgb(221, 81, 76); background-image: -moz-linear-gradient(center top , rgb(238, 95, 91), rgb(196, 60, 53)); background-repeat: repeat-x; color: rgb(255, 255, 255); width: 11.5%;
我發現了很多使用getCssValue for Java的解決方案?什麼是getCssValue的python等價物? – nids 2013-02-27 05:44:46
python等價物是element.value_of_css_property('background-color')。但它不會返回十六進制(Java不會:https://code.google.com/p/selenium/source/browse/java/client/src/org/openqa/selenium/WebElement.java)。 unutbu的答案會給你十六進制。 – Isaac 2013-02-27 16:54:54