如何获得显示在 google 搜索栏下的相同预测搜索数据

How to get the same predictive search data that shows under the google search bar

我正在尝试找到一种方法来获得与您输入的 Google 搜索栏下显示的相同的预测搜索结果。我也不是在谈论特定站点的自定义搜索。我认为这是不可能的,直到我从 chrome 商店看到一个新的标签页扩展。

https://chrome.google.com/webstore/detail/start-a-better-new-tab/kgifkabikplflflabkllnpidlbjjpgbp?hl=en

他们的搜索栏预测与 Google 的完全匹配。他们从什么来源获取数据?有没有任何人可以推荐的其他预测搜索 services/APIs?

“他们从什么来源获取数据?”

通过查看扩展的源代码,这个 URL:
https://google.com/complete/search?client=firefox&hl=en&q=foo

它与 Google 在其搜索页面上使用的 API 相同。但是 API 受到 CORS policy 的保护,因此无法从任何网页访问它。浏览器扩展可以,因为它被授予了更多权限。要使用它,您需要一个代理服务器(您自己的或免费的,例如下面示例中的那个)。

const searchInput = document.getElementById('search'),
  suggestionsList = document.getElementById('suggestions');

searchInput.addEventListener('input', autocomplete);
autocomplete();

function autocomplete() {
  const q = searchInput.value;
  const proxy = 'https://cors-everywhere.herokuapp.com/';
  
  fetch(`${proxy}https://google.com/complete/search?client=firefox&hl=en&q=${q}`, {
    headers: { origin: 'google.com' }
  })
  .then(res => res.json())
  .then(res => {
    suggestionsList.innerHTML = res[1].map(x => `<li>${x}</li>`).join('')
  });
}
<input id="search" value="foo" />
<ul id="suggestions"></ul>

“还有没有其他的……services/APIs?”

我们无法在这里回答这个问题,因为它是 off-topic。这类问题往往会吸引自以为是的答案和垃圾邮件。