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

如何使用requests_html按style="color:red"属性筛选对应文本内容

requests_html筛选属性匹配元素的实现方案

这个需求完全可以通过requests_html实现,它本身既支持JS渲染获取动态生成的页面内容,也支持通过CSS属性选择器精准筛选符合要求的元素,具体操作方法如下:

操作步骤

  • 第一步:安装依赖(如果还未安装可执行以下命令)
    pip install requests-html
  • 第二步:编写代码实现需求,核心逻辑是先渲染JS生成完整DOM结构,再通过属性模糊匹配筛选目标元素,最后提取对应文本
from requests_html import HTMLSession

# 初始化会话实例
session = HTMLSession()
# 替换为实际的目标页面URL
url = "你的目标页面地址"
resp = session.get(url)

# 渲染页面执行JS生成动态内容,可根据页面加载速度调整sleep参数延长等待时间,避免内容未加载完成
resp.html.render(sleep=2)

# 用CSS属性选择器筛选所有style属性包含color:red的a标签,*=代表模糊匹配属性中包含指定内容
target_elements = resp.html.find('a[style*="color:red"]')

# 遍历提取元素文本即可得到需要的名称
result = [elem.text for elem in target_elements]
print(result)

补充说明

  • 如果你要筛选的元素本身是静态写在原始HTML里、不需要JS生成的,可以省略render()步骤,直接调用find方法筛选即可
  • 如果匹配结果有多余的无关元素,可以调整选择器缩小范围,比如结合父元素的类名筛选:td.worker-col a[style*="color:red"],刚好适配你给出的HTML结构,筛选精准度更高

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 19:36:04