SurfPal 是一款时间管理 Chrome 扩展应用,用于跟踪、分析和限制你在每个网站上花费的时间,帮助你衡量和改善上网习惯。本篇文章会详细介绍如何使用 SurfPal。
屏幕时间分析
![](https://cdnfile.sspai.com/2024/07/25/article/2325d03195f38bb5f20ce37ac133266d.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
直观且灵活的数据分析能力是 SurfPal 的核心特性之一。正如上图所示,Analytics 页面由上方的控制区域和下方的数据展示区域组成,同时数据展示区域左右划分为两块,左边展示所查询的时间范围内的数据,右边展示下钻的数据。
让我们从控制区域开始介绍。你可以在这里调整要查询的网站或分组的集合、粒度和时间范围。
![](https://cdnfile.sspai.com/2024/07/25/article/8cc4faef8ddc4f7fb3ba0b6e81203e43.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
网站和分组支持多选,并且可以选择任意层级的域名。比如,你可以选择 google.com,这表示查询 google.com 及其所有子域名的数据,也可以选择 @.google.com,这表示只查询 google.com 这个域名本身的数据,而不包括它的子域名。
查询粒度可以选择日、周和月。当你选择以日为粒度时,下钻数据会以小时级粒度显示。当你选择以周或月为粒度时,下钻数据会以天级粒度显示。
所有的查询参数都和 URL 的 query string 绑定,不同的查询参数会有不同的 URL,你可以像收藏一般网页一样,收藏自己感兴趣的 Analytics 页面,不需要重复调整查询参数。
![](https://cdnfile.sspai.com/2024/07/25/article/83cfeb0f07e1eba42b0bb6c960ad81fd.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
在收藏 Analytics 页面之前,可以使用时间范围选择面板中的 “Rolling dates” 选项设置时间范围使用的是绝对时间还是相对时间。
![](https://cdnfile.sspai.com/2024/07/25/article/34b9094d0d4b0f14dd8b662d4ec6f0ed.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
SurfPal 支持将查询到的数据以 CSV 格式导出,方便在其它软件里处理。点击控制区域最右边的按钮会打开数据导出对话框,你可以在多个不同的数据聚合粒度之间选择自己想要的那个。
接下来是数据展示区域,从上到下依次是汇总数据、时序柱状图和排行榜。
![](https://cdnfile.sspai.com/2024/07/25/article/38154d0b81d5d29c4cc7fa9d05ea80b5.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
汇总数据的每一个块都是可以调整的,只需要用鼠标单击块,在下拉列表中选择你想展示的数据即可。
![](https://cdnfile.sspai.com/2024/07/25/article/e92f52f0c3737441b354a8560a05a262.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
在时序柱状图中,有两条绿色虚线,较低的那条表示对应时间范围内所有单位的平均时长,较高的那条表示对应时间范围内活跃单位的平均时长。
![](https://cdnfile.sspai.com/2024/07/25/article/29e41851bdc7b0c6acae71f1d566e412.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
在排行榜中,你可以查看任意层级域名的数据。点击右边的按钮,可以打开这个域名的 Analytics 页面。
限制网站浏览时长
![](https://cdnfile.sspai.com/2024/07/23/article/2d0cd968a22d52a6146196fe9727797e.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
SurfPal 支持你配置高度自定义的规则来限制不同网站的浏览时长,下面的内容会介绍如何配置这些规则以帮助你实现自己的需求,让我们开始吧。
打开 Time Limit Rules 页面:
![](https://cdnfile.sspai.com/2024/07/23/article/ea1262ee1037e019583e8259453405a4.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
可以看到,有一个预置的尚未启用的全局规则。全局规则只能有一个且不能删除。点击下面的按钮创建新的规则:
![](https://cdnfile.sspai.com/2024/07/23/article/ff6e9b20fc2364c69ad4f510a2bd72de.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
Target: 此规则对应的网站或分组。点开下拉列表从你浏览过的网站或者创建的分组中选择一项,也可以手动输入新的域名。
Period: 在多长的时间范围内统计浏览时长。
Max Duration: 单个周期内允许的最大浏览时长。
Rotate At: 新旧周期在什么时间点进行轮转。
Effective Days: 此规则在哪些天生效。
到这里,我们需要先了解一些概念。我们知道,很多网站都有子网站,比如 google.com 有 gemini.google.com 和 docs.google.com 等等,显然这是一个树型结构:
![](https://cdnfile.sspai.com/2024/07/23/article/98097d3e8edcd91e5e3c6544a8e808f6.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
所以 SurfPal 使用树型结构来组织数据,它会统计每一个节点的浏览时长:
![](https://cdnfile.sspai.com/2024/07/23/article/339079f24d30b7e28f564277ced64915.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
对应的,在配置规则时,我们不仅可以指定任意一个节点,也可以指定此规则是否也应用于它的子孙节点。举个例子来说,将 target 配置为 google.com,会将规则应用到 google.com 及其所有子站,包括 gemini.google.com 等,而将 target 配置为 @.google.com,则只会将规则应用到 google.com 自身,不包括它的子站。
很多时候,我们想限制的是某一类网站的浏览时长,而不仅仅是单个网站,这时就要引入“分组”这个概念了,规则同样也是可以应用到分组上的。在 SurfPal 里,你可以创建一些分组,每一个分组都是多个网站的集合。这里,我们创建了一个叫做 entertainment 的分组,它包含 tiktok.com 和 youtube.com 两个网站:
![](https://cdnfile.sspai.com/2024/07/23/article/eec1d6e8cdfbfe451a61c11a908b1ea9.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
假设我们的需求是限制在工作日一天内最多浏览 tiktok.com 或 youtube.com 两小时,可以创建如下规则:
![](https://cdnfile.sspai.com/2024/07/23/article/cf1405bbc10e3c6b02c6af7839993233.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
不难注意到,这个规则的轮转时间点是每天的凌晨 6 点,为什么这么配置呢?这主要和我们的作息时间有关。假如我们是夜猫子,喜欢晚睡,晚上 10:00 到 02:00 都在上网,如果轮转时间点是默认的 00:00,那么我们就可以连续浏览 tiktok.com 或 youtube.com 4 个小时,因为这段时间跨越了单个周期,这显然是不合理的。
还有一种常见的需求是能够配置例外,比如限制所有网站的浏览时长,但个别网站不限制,这可以利用 SurfPal 里规则优先级的概念实现。优先级由高到低分别是 sub.example.com > example.com > group > global。比如限制每周最多上网 20 小时,但不限制 google.com 的浏览时长,就可以这么配置:
![](https://cdnfile.sspai.com/2024/07/23/article/70c110918300b6d6cab73df06ce54b51.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
当达到配置的最大浏览时长时,SurfPal 会在一个新标签页中显示 block 页面,同时你无法切换标签页,你可以一键关闭所有匹配的标签页,或者忽略这个限制一段时间:
![](https://cdnfile.sspai.com/2024/07/23/article/ef0bf1723cf20eceb58d0845376a997c.png?imageView2/2/w/1120/q/40/interlace/1/ignore-error/1)
为什么使用新标签页而不在原页面显示呢?因为修改目标页面的 HTML 需要获取一个很高的权限(host permissions),能够修改就意味着可以读取对应网页上的内容。SurfPal 非常注重你的隐私保护,是不会获取这个权限的。
安装应用
SurfPal 已在 Chrome Web Store 上推出,欢迎你使用并提供反馈,谢谢!