You need to enable JavaScript to run this app. 如何使用Python BeautifulSoup爬取网页图片的src链接
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python BeautifulSoup爬取网页图片的src链接

用Python BeautifulSoup提取指定图片src的实现方法

前置准备

首先安装需要的依赖库,执行如下命令:
pip install beautifulsoup4 requests lxml

  • 不需要爬取线上网页、仅解析本地HTML的话可以不用安装requests
  • 不想装lxml的话也可以用Python内置的html.parser作为解析器,不需要额外安装依赖

实现代码

解析本地/已获取的HTML内容

from bs4 import BeautifulSoup

# 填入你拿到的目标网页HTML内容
html_content = """
<div class="image-view-magnifier-wrap"><img alt="2-Piece hoodie and sweatpants Suit sportswear men and women sweatshirt suit jogging pullovers" class="magnifier-image" src="https://ae01.alicdn.com/kf/H5db0c681ba2e4ce3a4cf6963548e6c833/2-Piece-hoodie-and-sweatpants-Suit-sportswear-men-and-women-sweatshirt-suit-jogging-pullovers.jpg_Q90.jpg_.webp" style="top: 0px; left: 0px; width: 100%; height: auto;"><div class="magnifier-loading-wrap" style="display: none;"><div class="magnifier-loading-cover"></div><div class="magnifier-loading"></div></div><div class="magnifier-cover" data-spm-anchor-id="a2g0o.detail.1000017.i0.7fd2579bO2tCaS"></div></div>
"""

# 初始化BeautifulSoup对象
soup = BeautifulSoup(html_content, 'lxml')

# 定位目标图片,两种方式可选:
# 方式1:直接通过img标签的class定位
target_img = soup.find('img', class_='magnifier-image')
# 方式2:担心class重复的话可以先定位父容器再找img
# parent_wrap = soup.find('div', class_='image-view-magnifier-wrap')
# target_img = parent_wrap.find('img', class_='magnifier-image')

if target_img:
    # 提取src属性
    img_src = target_img.get('src')
    print(f"提取到的图片链接:{img_src}")
else:
    print("未找到目标图片")

直接爬取线上网页的完整代码

import requests
from bs4 import BeautifulSoup

# 填入你的目标网页地址
url = "目标网页URL"
# 加请求头避免被网站反爬拦截
headers = {
    "User-Agent": "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/120.0.0.0 Safari/537.36"
}

response = requests.get(url, headers=headers)
response.encoding = response.apparent_encoding
soup = BeautifulSoup(response.text, 'lxml')

# 后续定位提取逻辑和上面一致
target_img = soup.find('img', class_='magnifier-image')
if target_img:
    img_src = target_img.get('src')
    print(f"提取到的图片链接:{img_src}")

注意事项

  • 部分网站的图片用了懒加载,真实地址会存在data-src这类属性里,找不到src的时候可以检查img的其他属性
  • 爬取线上网页时请控制请求频率,遵守对应网站的robots协议

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.18 05:57:05