SurfPal 是一款时间管理 Chrome 扩展应用,用于跟踪、分析和限制你在每个网站上花费的时间,帮助你衡量和改善上网习惯。本篇文章会详细介绍如何使用 SurfPal。

屏幕时间分析

直观且灵活的数据分析能力是 SurfPal 的核心特性之一。正如上图所示,Analytics 页面由上方的控制区域和下方的数据展示区域组成,同时数据展示区域左右划分为两块,左边展示所查询的时间范围内的数据,右边展示下钻的数据。

让我们从控制区域开始介绍。你可以在这里调整要查询的网站或分组的集合、粒度和时间范围。

网站和分组支持多选,并且可以选择任意层级的域名。比如,你可以选择 google.com,这表示查询 google.com 及其所有子域名的数据,也可以选择 @.google.com,这表示只查询 google.com 这个域名本身的数据,而不包括它的子域名。

查询粒度可以选择日、周和月。当你选择以日为粒度时,下钻数据会以小时级粒度显示。当你选择以周或月为粒度时,下钻数据会以天级粒度显示。

所有的查询参数都和 URL 的 query string 绑定,不同的查询参数会有不同的 URL,你可以像收藏一般网页一样,收藏自己感兴趣的 Analytics 页面,不需要重复调整查询参数。

在收藏 Analytics 页面之前,可以使用时间范围选择面板中的 “Rolling dates” 选项设置时间范围使用的是绝对时间还是相对时间。

SurfPal 支持将查询到的数据以 CSV 格式导出,方便在其它软件里处理。点击控制区域最右边的按钮会打开数据导出对话框,你可以在多个不同的数据聚合粒度之间选择自己想要的那个。

接下来是数据展示区域,从上到下依次是汇总数据、时序柱状图和排行榜。

汇总数据的每一个块都是可以调整的,只需要用鼠标单击块,在下拉列表中选择你想展示的数据即可。

在时序柱状图中,有两条绿色虚线,较低的那条表示对应时间范围内所有单位的平均时长,较高的那条表示对应时间范围内活跃单位的平均时长。

在排行榜中,你可以查看任意层级域名的数据。点击右边的按钮,可以打开这个域名的 Analytics 页面。

限制网站浏览时长

SurfPal 支持你配置高度自定义的规则来限制不同网站的浏览时长,下面的内容会介绍如何配置这些规则以帮助你实现自己的需求,让我们开始吧。

打开 Time Limit Rules 页面:

可以看到,有一个预置的尚未启用的全局规则。全局规则只能有一个且不能删除。点击下面的按钮创建新的规则:

Target: 此规则对应的网站或分组。点开下拉列表从你浏览过的网站或者创建的分组中选择一项,也可以手动输入新的域名。

Period: 在多长的时间范围内统计浏览时长。

Max Duration: 单个周期内允许的最大浏览时长。

Rotate At: 新旧周期在什么时间点进行轮转。

Effective Days: 此规则在哪些天生效。

到这里,我们需要先了解一些概念。我们知道,很多网站都有子网站,比如 google.com 有 gemini.google.com 和 docs.google.com 等等,显然这是一个树型结构:

所以 SurfPal 使用树型结构来组织数据,它会统计每一个节点的浏览时长:

对应的,在配置规则时,我们不仅可以指定任意一个节点,也可以指定此规则是否也应用于它的子孙节点。举个例子来说,将 target 配置为 google.com,会将规则应用到 google.com 及其所有子站,包括 gemini.google.com 等,而将 target 配置为 @.google.com,则只会将规则应用到 google.com 自身,不包括它的子站。

很多时候,我们想限制的是某一类网站的浏览时长,而不仅仅是单个网站,这时就要引入“分组”这个概念了,规则同样也是可以应用到分组上的。在 SurfPal 里,你可以创建一些分组,每一个分组都是多个网站的集合。这里,我们创建了一个叫做 entertainment 的分组,它包含 tiktok.com 和 youtube.com 两个网站:

假设我们的需求是限制在工作日一天内最多浏览 tiktok.com 或 youtube.com 两小时,可以创建如下规则:

不难注意到,这个规则的轮转时间点是每天的凌晨 6 点,为什么这么配置呢?这主要和我们的作息时间有关。假如我们是夜猫子,喜欢晚睡,晚上 10:00 到 02:00 都在上网,如果轮转时间点是默认的 00:00,那么我们就可以连续浏览 tiktok.com 或 youtube.com 4 个小时,因为这段时间跨越了单个周期,这显然是不合理的。

还有一种常见的需求是能够配置例外,比如限制所有网站的浏览时长,但个别网站不限制,这可以利用 SurfPal 里规则优先级的概念实现。优先级由高到低分别是 sub.example.com > example.com > group > global。比如限制每周最多上网 20 小时,但不限制 google.com 的浏览时长,就可以这么配置:

当达到配置的最大浏览时长时,SurfPal 会在一个新标签页中显示 block 页面,同时你无法切换标签页,你可以一键关闭所有匹配的标签页,或者忽略这个限制一段时间:

为什么使用新标签页而不在原页面显示呢?因为修改目标页面的 HTML 需要获取一个很高的权限(host permissions),能够修改就意味着可以读取对应网页上的内容。SurfPal 非常注重你的隐私保护,是不会获取这个权限的。

安装应用

SurfPal 已在 Chrome Web Store 上推出,欢迎你使用并提供反馈,谢谢!

应用页面:SurfPal: Screen Time Tracker & Website Blocker