统计 chrome 浏览器历史记录中通过 google 搜索访问的网址

Count urls in chrome browser history that were visited via google search

是否可以使用 Chrome 历史记录 API 来计算使用 google 搜索引擎访问的历史记录中 URL 的数量?

对于每个访问过的 URL,Chrome 历史记录 API 提供了一个 VisitItem 对象,可用于访问引用者的访问 ID(referringVisitId 属性)。 https://developer.chrome.com/extensions/history#type-VisitItem

如果 URL(比如 https://en.wikipedia.org/wiki/java)被 google 搜索结果访问(点击),则 referringVisitId 的值始终为 0,而它应该是google 个搜索结果 URL。为什么在这种情况下 referringVisitId 的值为 0? referringVisitId 属性的用途是什么?

Chrome History API 不提供基于引荐来源的访问列表 url。 事实上,它提供 referringVisitId,但并非总是如此。

我做了一个测试,发现 Chrome History API 将提供一个 referringVisitId only 如果 url 在同一标签中使用引用网页内的锚标记访问。 否则 referringVisitId 将始终为 0。请参见下面的屏幕截图。

这是我用来抓取历史的测试代码https://en.wikipedia.org/wiki/Java_(programming_language) url:

  chrome.history.getVisits({"url":"https://en.wikipedia.org/wiki/Java_(programming_language)"}, function(details){
      console.log(details);
  });

另外,如果您尝试仅为 Google 构建解决方案。我建议您使用内容脚本而不是使用 Chrome History API 来执行此操作。因为,我认为它无法满足您获取通过 Google 访问的所有链接的要求。