如何使用 Selenium 提取指定 div 中所有图片链接-Python教程

本文详解如何通过 python + selenium 定位包含图片链接的 `

` 元素,并准确提取其内部 “ 标签的 `href` 属性值,生成图片 url 列表。适用于电商商品页、图集页等常见场景。

在网页自动化采集中,常需从特定容器(如 class=”goods_descr_images” 的

)中批量获取图片资源链接。这些链接通常隐藏在 标签的 href 属性中(而非 标签),直接调用 .text 或 .get_attribute(‘src’) 会返回空值或报错——因为目标元素本身不含文本内容,也无 src 属性。

正确做法是:先定位父级

,再查找其内部所有 子元素,最后统一读取 href 属性。以下是完整、健壮的实现代码:

from selenium import webdriver
from selenium.webdriver.common.by import By
from selenium.webdriver.support.ui import WebDriverWait
from selenium.webdriver.support import expected_conditions as EC

# 假设 driver 已初始化(例如:driver = webdriver.Chrome())
# 确保页面已加载完成,推荐显式等待目标 div 出现
wait = WebDriverWait(driver, 10)
goods_div = wait.until(
    EC.presence_of_element_located((By.CLASS_NAME, "goods_descr_images"))
)

# 查找该 div 下所有  标签
a_elements = goods_div.find_elements(By.TAG_NAME, "a")

# 提取每个  的 href 属性(即图片链接)
image_links = [a.get_attribute("href") for a in a_elements if a.get_attribute("href")]

# 去重(可选,因示例 HTML 中存在重复链接)
unique_links = list(dict.fromkeys(image_links))

print("共提取到", len(unique_links), "个唯一图片链接:")
for idx, link in enumerate(unique_links, 1):
    print(f"{idx}. {link}")

⚠️ 关键注意事项:

夏夕资源网专注于CMS网站模板,主流语言整站网站源码下载,网站建设相关教程分享,好用的软件素材整合下载,提供一站式便捷自助服务。
1. 本站所有资源来源于用户上传和网络,如有侵权请邮件联系站长!
2. 分享目的仅供大家学习和交流,您必须在下载后24小时内删除!
3. 不得使用于非法商业用途,不得违反国家法律。否则后果自负!
4. 本站提供的源码、模板、插件等等其他资源,都不包含技术服务请大家谅解!
5. 如有链接无法下载、失效或广告,请联系管理员处理!
6. 本站资源售价只是赞助,收取费用仅维持本站的日常运营所需!
7. 如遇到加密压缩包,默认解压密码为"zy.lucklyus.top",如遇到无法解压的请联系管理员!
夏夕资源网-网站模板_免费源码_资源素材 » 如何使用 Selenium 提取指定 div 中所有图片链接-Python教程
在线时间:12:00 - 22:00
关注微信公众号:微信公众号
站长邮箱:[email protected]
  • 运营天数: 1393+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4025903+
  • 本周更新: 0+
  • 最后更新: 2026-03-16

本站指数

×
  • 运营天数: 1393+
  • 资源总数: 47989+
  • 用户总数: 1+
  • 今日更新: 0+
  • 访问次数: 4025903+
  • 本周更新: 0+
  • 最后更新: 2026-03-16