Google Chrome 扩展,获取用户浏览次数最多的网站
Google Chrome Extension, Getting The User's Most Viewed Websites
我真的很想在我的新标签页中添加一个区域,让用户可以轻松访问他们最常访问的网站,我该如何在不询问用户的情况下找到他们最常访问的网站?
另外,我如何获得最近关闭的标签页?
您可以使用 topSites api 检索默认情况下位于新标签页上的网站列表。
如果您需要的信息比 API 提供的更多信息,您还可以查看 history API and bookmarks API 以了解用户经常访问哪些网站。
我不知道有什么方法可以找到最近关闭的标签页,但您可以在 tabs.onRemove
事件中列出并存储标签页关闭时的相关信息。
为了扩展 David 的回答,最近 API 最近关闭的标签页:chrome.sessions
API。
具体来说,你需要getRecentlyClosed
方法:
chrome.sessions.getRecentlyClosed(function(sessions) {
var recentUrls = [];
sessions.forEach(function(session) {
if(session.window) {
session.window.tabs.forEach(function(tab) {
recentUrls.push(tab.url);
});
} else {
recentUrls.push(session.tab.url);
}
});
console.log(recentUrls);
});
您需要 "sessions"
和 "tabs"
权限(以访问 URL)。
我真的很想在我的新标签页中添加一个区域,让用户可以轻松访问他们最常访问的网站,我该如何在不询问用户的情况下找到他们最常访问的网站?
另外,我如何获得最近关闭的标签页?
您可以使用 topSites api 检索默认情况下位于新标签页上的网站列表。
如果您需要的信息比 API 提供的更多信息,您还可以查看 history API and bookmarks API 以了解用户经常访问哪些网站。
我不知道有什么方法可以找到最近关闭的标签页,但您可以在 tabs.onRemove
事件中列出并存储标签页关闭时的相关信息。
为了扩展 David 的回答,最近 API 最近关闭的标签页:chrome.sessions
API。
具体来说,你需要getRecentlyClosed
方法:
chrome.sessions.getRecentlyClosed(function(sessions) {
var recentUrls = [];
sessions.forEach(function(session) {
if(session.window) {
session.window.tabs.forEach(function(tab) {
recentUrls.push(tab.url);
});
} else {
recentUrls.push(session.tab.url);
}
});
console.log(recentUrls);
});
您需要 "sessions"
和 "tabs"
权限(以访问 URL)。