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

如何使用Selenium定位SVG命名空间内图片并提取特工名称?

爬取特工名称实现方案
  • 首先明确属性归属:你检查到的<img>标签本身不携带href属性,你要找的href=/assets/agents/agent_name.webp是包裹该img标签的外层<a>链接标签的属性,不要直接在img节点上读取属性,否则会拿到空值。

具体实现步骤

  1. 定位目标元素
    根据页面左侧角色区域的特征,先筛选到对应角色的img节点,再向上取它的父级a节点即可。
    不同爬虫库的属性读取示例:
  • BeautifulSoup 写法
from bs4 import BeautifulSoup
soup = BeautifulSoup(页面源码文本, "html.parser")
# 替换成你实际的img选择器,比如按class、alt属性、所在父容器定位
agent_img = soup.select_one("角色图片对应的CSS选择器")
# 读取外层a标签的href属性值
agent_href = agent_img.parent.get("href")
  • Scrapy/Parsel 写法
from parsel import Selector
sel = Selector(text=页面源码文本)
# 直接通过xpath取img父级a的href属性
agent_href = sel.xpath("匹配目标img的xpath规则/parent::a/@href").get()
  1. 提取特工名称
    拿到的href值格式固定,不需要复杂解析,两种简单方法任选即可:
import re

# 方法1:字符串切割,逻辑最简单性能最高
agent_name = agent_href.split("/")[-1].split(".")[0]

# 方法2:正则匹配,路径格式有小变动时容错性更好
agent_name = re.search(r"/assets/agents/(.+?)\.webp", agent_href).group(1)

注意:不要直接从img的src属性里提取名称,大部分站点图片会做懒加载,img的src默认存的是占位图地址,和实际特工资源路径不对应,取外层a的href值结果才准确。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.27 01:01:06