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

使用Jsoup提取HTML元素style属性内background-image的urlImage值

实现代码

你可以通过正则匹配完成需求,先移除style内容里的CSS注释,再提取目标属性:

import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import java.util.regex.Matcher;
import java.util.regex.Pattern;

public class ExtractImageUrl {
    public static void main(String[] args) throws Exception {
        String url = "你的目标页面地址";
        Document document = Jsoup.connect(url).get();
        for (Element element: document.select(".photo_wrap")) {
            String style = element.attr("style");
            // 移除所有/* */格式的CSS注释
            String noCommentStyle = style.replaceAll("/\\*.*?\\*/", "").trim();
            // 匹配background-image配置项
            Pattern bgPattern = Pattern.compile("background-image\\s*:\\s*url\\(.*?\\)", Pattern.CASE_INSENSITIVE);
            Matcher bgMatcher = bgPattern.matcher(noCommentStyle);
            if (bgMatcher.find()) {
                // 此处输出就是你需要的 background-image:url("urlImage")
                String bgConfig = bgMatcher.group().trim();
                System.out.println(bgConfig);
                
                // 如果需要单独提取urlImage的值,追加以下逻辑
                Pattern urlPattern = Pattern.compile("url\\s*\\([\"']?(.*?)[\"']?\\)");
                Matcher urlMatcher = urlPattern.matcher(bgConfig);
                if (urlMatcher.find()) {
                    String urlImage = urlMatcher.group(1).trim();
                    System.out.println(urlImage);
                }
            }
        }
    }
}

上述代码兼容CSS属性大小写、属性与值之间有空格的场景,可直接运行使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 15:18:00