Python selenium根据classname获取文本颜色

都是通过css定位

方法1,直接css定位,然后value_of_css_property('color'),获取颜色之后把转换成16进制,类似#f5222d这样

其中'color'表示文本颜色,背景颜色及其他可自行百度

复制代码
color = str(driver.find_elements(By.CSS_SELECTOR,  '.ant-form-explain')[7].value_of_css_property('color'))
color_hex = rgba_to_hex(color)
def rgba_to_hex(rgba_color):
    rgba_color = rgba_color.split('rgba')[1].replace('(', '').replace(')', '').replace(' ', '')
    r = hex(int(rgba_color.split(',')[0]))
    g = hex(int(rgba_color.split(',')[1]))
    b = hex(int(rgba_color.split(',')[2]))
    rgb = f'#{str(r)[2:]}{str(g)[2:]}{str(b)[2:]}'
    return rgb
复制代码

方法2,使用driver.execute_script执行js命令,然后selenium.webdriver.support.color.Color进行转换

ele = driver.find_elements(By.CSS_SELECTOR,  '.ant-form-explain')[7].value_of_css_property('color')
color2 = driver.execute_script(f"return window.getComputedStyle(arguments[0], null).getPropertyValue('color');", ele)
color_hex = Color.from_string(color2).hex

 

posted @   你说夕阳很美  阅读(47)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享4款.NET开源、免费、实用的商城系统
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· 上周热点回顾(2.24-3.2)
历史上的今天:
2023-06-26 更简洁的方式实现多层for循环嵌套
点击右上角即可分享
微信分享提示