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

使用Jsoup获取图片:请解释document.select选择器表达式含义

解释 Jsoup 中的 document.select("img[src~=(?i)\\.(png|jpe?g|gif)]") 选择器

嘿,我来帮你拆解这行Jsoup代码的逻辑,它其实是网页爬虫里筛选图片的常用操作,特别适配你做漫画下载的场景:

1. 整体作用

这行代码的核心是从Jsoup解析好的HTML文档(document对象)中,筛选出所有符合特定格式的图片标签,最终返回一个包含这些图片元素的Elements集合,方便你后续提取图片链接并下载。

2. 逐个拆解细节

  • document.select():这是Jsoup提供的核心筛选方法,接受CSS选择器(或扩展的选择器语法)作为参数,从HTML文档中捞取符合条件的元素。
  • img:最基础的元素选择器,指定我们要找的是HTML里的<img>标签——也就是网页上的图片元素。
  • [src~=正则表达式]:这是Jsoup对CSS选择器的扩展,~=表示「属性值需要匹配指定的正则表达式」,这里就是要筛选src属性(图片的链接地址)符合后面正则规则的<img>标签。

3. 正则表达式 (?i)\\.(png|jpe?g|gif) 详解

这部分是筛选图片格式的关键:

  • (?i):正则的忽略大小写修饰符,意味着不管图片后缀是大写(比如.PNG、.JPEG)还是小写(.png、.jpg),都会被匹配到——毕竟网页里的图片链接大小写经常不统一,这个修饰符能帮你避免漏掉图片。
  • \\.:正则里的.是通配符(匹配任意单个字符),所以用\\转义后,就表示匹配实际的点号(.),也就是图片后缀前的那个点。
  • (png|jpe?g|gif):分组匹配,|代表「或」的逻辑:
    • png:匹配后缀为png的图片;
    • jpe?g:?表示前面的e可选,所以既能匹配jpg,也能匹配jpeg;
    • gif:匹配后缀为gif的图片。

简单来说,整行代码就是帮你把网页里所有PNG、JPG/JPEG、GIF格式的图片都找出来,完美适配你下载漫画图片的需求~

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.06 11:18:14