jsoup - JSoup 无法从 Google 购物中抓取图像 URL
问题描述
我试图从 Google 购物搜索结果中获取图片的 URL。我获取图片网址的代码如下:
Element image = el.getElementsByClass("TL92Hc").get(0);
System.out.println(image.attr("src"));
我得到的是 src 值的弃用版本,如下所示:
data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
我知道 Google Shopping 生成的图片 url 的长度非常 - 非常长(大约 12047 个字符)。
无论如何,可以使 Jsoup 不弃用结果吗?
解决方案
它不会被截断,因为它以==
大多数 base64 字符串结尾。它也是有效的 1x1 像素 gif 图像(当您粘贴data:image/gif;base64,R0lGODlhAQABAIAAAP///////yH5BAEKAAEALAAAAAABAAEAAAICTAEAOw==
到地址栏时,它会在浏览器中打开。
所以我的猜测是这个页面包含多个带有类的图像,TL92Hc
或者这个图像只是一个占位符,真实的图像是用 JavaScript 动态加载的。
推荐阅读
- c# - CMake Dlibdotnet.native 构建错误
- java - 无法从java读取属性文件
- javascript - 在Javascript中反转字符串?
- flutter - 作为变量的颤动按钮与非变量不同
- java - 将名称包更改为以前的版本
- javascript - 使用 Chart.js 从外部 JSON 文件解析值
- reactjs - 在重复单击另一个组件reactjs中的相同选项卡时重新渲染组件
- android - DateUtils.getRelativeTimeSpanString() 在 Android 5 上因 NullPointerException 而失败
- jquery - 将变量从 JQuery 发送到 Bootstrap 模态
- laravel - Vue警告,无法生成渲染函数