You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在Python Playwright中获取元素类名及CSS颜色?

用Python Playwright获取元素类名和CSS颜色属性的正确方法

你之前写的.Class()方法是错误的,Playwright Python API里没有这个方法,下面是正确的实现方式:

  • 获取元素类名:使用get_attribute("class")方法获取元素的class属性值
  • 获取CSS颜色属性:通过evaluate执行浏览器JS,用window.getComputedStyle获取元素最终应用的计算样式(包括继承或样式表定义的颜色)

完整代码示例

from playwright.sync_api import sync_playwright

with sync_playwright() as p:
    browser = p.chromium.launch()
    page = browser.new_page()
    page.goto("你的目标网页URL")  # 替换为实际网页地址
    
    # 定位目标元素
    target_element = page.locator('xpath=//*[@id="__next"]/div[1]/div/div[2]/div[1]/div[1]/div/div[1]')
    # 等待元素加载完成,避免报错
    target_element.wait_for()
    
    # 获取元素类名
    class_name = target_element.get_attribute("class")
    print("元素类名:", class_name)
    
    # 获取计算后的文本颜色(color属性)
    text_color = target_element.evaluate("el => window.getComputedStyle(el).color")
    print("文本颜色:", text_color)
    
    # 获取计算后的背景颜色(background-color属性)
    bg_color = target_element.evaluate("el => window.getComputedStyle(el).backgroundColor")
    print("背景颜色:", bg_color)
    
    browser.close()

说明

  1. get_attribute("class")直接读取元素标签上的class属性值,返回字符串形式的类名列表
  2. window.getComputedStyle(el)会返回元素最终生效的所有CSS样式,能拿到实际显示的颜色,不管颜色是内联样式、CSS类还是继承来的

内容的提问来源于stack exchange,提问作者Mateus Barros

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.10 23:45:54