- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我正在使用 Google 自定义搜索来获取符合某些条件的图像。
我正在从 java 应用程序发起 HTTP Get 请求以调用 Google 自定义搜索 API
(请注意我不使用 javascript 或 css 并且我不开发网络网站)。
我能够获取图像,程序运行正常。该应用程序带来具有 Jpg
扩展名的图像。
我想:
png
扩展名并且具有透明背景的图像。我尝试像这样在请求 URL 的查询字符串中指定 filetype
https://www.googleapis.com/customsearch/v1?q=cars&filetype=png&cx=[myinformatino]&searchType=image&rights=cc_publicdomain&num=10&key=[myKey]
但结果实际上仍然是 jpg
并且 Google 自定义搜索只带来一两个结果。
注意事项
我将 Google 自定义搜索(从其控制面板)配置为搜索所有网络,我并未限制它搜索某些网站。
我像这样配置了 Google 自定义搜索以启用图像搜索(也来自控制面板)
搜索功能
-> 高级
页面)如下图我还创立了this code examples from google documentation这限制了图像的类型,但它们似乎是在根本不适合我的 javascripts 中(不是在 java 中)。
更新我找到了搜索 png
文件的解决方案,解决方案是在查询本身中提供 filetype:png
而不是将此值指定为 Google 自定义搜索的查询字符串.结果是合理且可接受的。
更新我还尝试了 Google 图像搜索中使用的 tbs
查询字符串参数,如果我们想要获取透明图像,它的工作方式如下
?tbs=ic:trans&
这仅适用于 Google 图片搜索,但不适用于 Google 自定义搜索。即使当我为 Google 自定义搜索使用 hq
参数时,它也只是将参数按原样添加到 url 以添加 tbs
参数。
但我仍然无法让 Google 自定义搜索带来仅具有透明背景的图像。
更新
如果有办法使用 Bing Search API 实现相同的目标(使图像具有透明背景),我也会接受答案。我也尝试了 Bing 搜索 API,它也有效,但出现了同样的问题,无法指定我需要透明背景的图像。
更新根据 this discussionGoogle 已弃用的搜索 API 中存在未记录的参数,它确实带来了透明图像,如下所示
imgc=trans
这适用于旧的已弃用的谷歌搜索 API,但它不适用于新的 API,也不适用于 BING API。
更新对于 Bing 搜索 API,我尝试将此查询参数添加到 URL 中,该参数在 BING 图像搜索(在网站中而不是在 API 中)中指定透明背景
qft=+filterui:photo-transparent
虽然这适用于普通 BING 搜索,但不适用于 BING 搜索 API。
最佳答案
查看图片搜索的url,发现参数是tbs。
例如:
透明图像:...&tbs=ic:trans&....
灰度图像:...&tbs=ic:gray&...
特定颜色(例如:橙色):...&tbs=ic:specific,isc:orange&...
M.
关于java - 如何在 Google 自定义搜索中指定图像类型,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34036768/
我是一名优秀的程序员,十分优秀!