我可以将 Google 图片搜索嵌入我的 html5 网页吗

Can I embed Google Image search into my html5 webpage

我想做的是让用户点击我网站上的按钮(实际上是一个在用户机器上本地运行的网络应用程序,因此每个实例都是单个用户),它会启动 Google 图片搜索设置各种参数并在我的 html 页面的一部分中显示结果。

这是因为他们可以 select 图片并将其拖放到我网页上的拖放区。这部分有效,但目前搜索在新选项卡中打开,因此从该选项卡拖到我的选项卡有点麻烦。

作为 iframe 嵌入不起作用,Google 不允许这样做。

所以

a> 是否有 Google 认可的 API 我可以用来执行 Google 搜索图像并在我的页面中显示。

b> 我可以从我的服务器发送 url 请求吗(我喜欢 curl/wget 然后截屏结果并显示在网页上

Google 已停用图像搜索 API,它不再可用(请参阅此 SO 线程和替代方案)。

如果你打开你提供的URL,它会这样说:

{"responseData": null, "responseDetails": "This API is no longer available.", "responseStatus": 403}

Google 的自定义搜索引擎 (CSE) API 每天限制为 100 个免费请求。

正在创建 cx 并对其进行修改以搜索图像

  1. 根据您的搜索条件在 https://cse.google.com/cse/create/new 创建自定义搜索引擎。
  2. 选择要搜索的站点(如果要搜索整个网络,请留空,否则您可以输入站点以在特定站点中搜索)
  3. 为您的搜索引擎输入名称和语言。
  4. 单击 "create." 您现在可以在浏览器中找到 cx URL。
  5. 在 "Modify your search engine," 下单击 "Control Panel" 按钮。在 "edit" 部分,您会找到一个带有 ON/OFF 按钮的 "Image Search" 标签,将其更改为 ON。单击 "update" 保存您的更改。

正在使用 API

进行搜索

API 端点 url 是 https://www.googleapis.com/customsearch/v1

以下 JSON 参数用于此 API:

  • q: 指定搜索文本
  • num:指定结果数。需要 1 到 10(含)之间的整数值
  • start:结果的 "offset",搜索应该从哪个结果开始。需要 1 到 101 之间的整数值。
  • imgSize:图像的大小。我用了 "medium"
  • searchType:必须设置为"image"
  • filetype:指定图像的文件类型。我使用了`"jpg",但如果文件扩展名对你来说不重要,你可以忽略它。
  • key:一个API键,从https://console.developers.google.com/
  • 获得
  • cx: 上一节中的自定义搜索引擎ID

只需将上述参数作为 JSON 传递给 API 端点(也在上面列出),即可发出 GET 请求。

注意: 如果您在搜索引擎设置中设置了引荐列表,则通过浏览器访问 URL 可能无法正常工作。您将需要从此列表中指定的服务器进行 AJAX 调用(或其他语言的等效调用)。它仅适用于在配置设置中指定的引荐来源网址。

参考: https://developers.google.com/custom-search/json-api/v1/reference/cse/list

答案来自: