javascript - 在自定义搜索中抓取 JSON 图像
问题描述
如何从自定义搜索 JSON 响应中获取图像?
function hndlr(response) {
for (var i = 0; i < response.items.length; i++) {
var item = response.items[i];
document.getElementById("content").innerHTML += "<br>" + item.htmlTitle;
}
}
例如,我已经有 10 个结果,每篇文章都有标题、描述和图像。
我已经使用我的密钥和 CX 代码连接到 API,访问了 htmlTitle,或链接或其他组件。但我不知道如何访问我的图像绑定到每个结果的缩略图部分。
这是来自谷歌自定义搜索的响应: https ://drive.google.com/open?id=101MuxGd8oyOAYvfNthuW7saNpm-m3kSe
如何访问 thumbnail.src?
item.pagemap.thumbnail.src???
谢谢你的帮助
解决方案
作为thumbnail
对象数组,如果item
是items
数组中的元素,您可以通过以下方式访问它:
item.pagemap.thumbnail[0].src
数组item.pagemap.thumbnail[0]
中的第一个对象在哪里。thumbnail
为了使其更加防弹,您应该在从中获取第一个元素之前检查数组长度,以及该src
属性是否存在。例如:
var fallbackImage = 'the url for the fallback image';
var thumbnail = item.pagemap.thumbnail.length > 0 ? item.pagemap.thumbnail[0].src || fallbackImage : fallbackImage;
推荐阅读
- python - pygame 关于添加图层的帮助
- java - 启用 Firebase Crashlytics
- ruby-on-rails - 如何使用 3 个选项来管理调查模型
- python-3.x - AttributeError:模块“tensorflow.app”没有属性“标志”
- datetime - F# 如何比较两个日期时间值
- java - 为什么我在这个对象上得到 NullPointerException?
- java - for循环将最后一个结果分配给变量
- c++ - C++ 避免指针的惯用方法是什么?
- reporting-services - Crystal Reports Like SSRS 2008 R2 Report 中的详细信息部分
- node.js - Node.js express + React.js 推送到 Heroku 不工作