npm包bing-image-search-async-iterator是一个基于async iterator的微软bing搜索API的Node.js封装。它允许用户使用迭代器搜索并获取大量异步的图片数据,为开发中需要大量图片的应用提供了一个更为高效的解决方案。
安装
使用npm命令可以简单的安装bing-image-search-async-iterator包:
npm install bing-image-search-async-iterator
使用
引入包
const bingImageSearch = require('bing-image-search-async-iterator');
配置
首先,在使用之前我们需要配置获取图片的关键字和Microsoft Bing搜索API的订阅密钥:
const options = { query: 'puppy', subscriptionKey: '27fa3f6e255f48aabcaee6d3800f2ff2' };
query:关键字,可以是任何您感兴趣的内容,例如示例中的‘puppy’表示搜索小狗的照片。
subscriptionKey:API密钥,可以在 Azure中心门户 上获取。登陆账户后,在搜索中输入Bing Search v7
,订阅免费版或者更高等级。
使用迭代器
然后,创建AsyncIterator对象,使用next方法按需获取图片数据。例如,获取10张图片数据,每次最多获取5张:
-- -------------------- ---- ------- ----- -------- - ------------------------- --- ----- - -- ------ -- -- - ----- ------ - --- - ----- --- - ----- ----------------- ----------------- -- ------ ----- -- ----------------- - -----
注意:
- next( ) 方法本身是async方法,因此返回值也是Promise对象,需要用await语句处理。
- res.value是一个数组,包含了每次搜索的图片信息。
示例代码
以搜索puppy为例,输出10张图片的URL链接。
-- -------------------- ---- ------- ----- --------------- - -------------------------------------------- ----- ------- - - ------ -------- ---------------- ---------------------------------- -- ----- -------- - ------------------------- --- ----- - -- ------ -- -- - ----- ------ - --- - ----- --- - ----- ----------------- --- ---- - - -- - - ----------------- ---- - ------------------------------------- - ----- -- ----------------- - -----
结论
npm包bing-image-search-async-iterator提供了一个高效的solution用于获取大量异步的图片数据,让我们不再需要担心内存不够以及数据获取的效率问题。
来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/6006737a890c4f7277584132