本文介绍如何在飞书文档 Web 页面中,去除自带的水印(通常包含姓名、手机号后四位)。内容涵盖分析流程与三种主流技术路径。
前言
飞书是国内主流的协作办公平台之一,文档带水印本意是溯源和防泄漏。不过在内部测试、公开演示、技术博客截图等场景下,水印常常让人尴尬:既影响观感,又容易暴露个人隐私。
那么,能否安全、便捷地去除页面水印呢?带着这个问题,我做了一轮技术分析与实战尝试。

既有方案与自造轮子
网上已经有现成脚本可以一劳永逸去水印,十分方便。

但安全研究员的乐趣,恰恰在于“造轮子”的过程——不仅解决问题,更锻炼分析和逆向能力,也方便和他人交流我的技术思路。
一、技术原理分析
1. 飞书水印的前端机制

通过浏览器开发者工具分析,飞书水印通常通过如下方式实现:
- 页面 DOM 中插入带有
.ssrWaterMark类名的元素,内容为水印(姓名/手机号)。 - 样式通过
<style id="watermarkSSRStyle">控制,水印区域多为position: fixed,透明但不易忽视。 - 某些特殊场景(如 App 内 WebView、特定 URL 参数)下,水印可被自动隐藏。
页面部分源代码示例:
var ssrWatermarkStyle = document.querySelector("#watermarkSSRStyle");
if ((/vcWaterMark=1/i.test(location.search)
&& ( ... ))
|| /shwm=true/i.test(location.search)
) {
ssrWatermarkStyle.innerHTML += `.ssrWaterMark { display: none; }`;
}
这说明,只要参数或环境满足条件,水印就能自动消失。
二、三种主流去水印技术
1. 增加 URL 参数(最简便)
如果你有权限修改访问链接,只需在文档 URL 后加上 ?shwm=true 或 &shwm=true:
https://feishu.cn/docs/xxxxxx?shwm=true
页面中的 JS 检测到该参数后,会自动在样式中加入 display: none,从而隐藏所有水印。
优点:
- 无需写代码,无需额外插件;
- 适合一次性演示或分享用。
缺点:
- 有些页面、环境未必支持,且未来飞书可能变更实现逻辑。
- 部分用户反馈只会消失 3~5 秒,无法持久。
2. 控制台一次性代码(手动党专用)
开发者工具 F12,Console 粘贴以下代码,一键去水印:
document.querySelectorAll('.ssrWaterMark').forEach(e => e.remove());
或者只是隐藏而不删除:
document.querySelectorAll('.ssrWaterMark').forEach(e => e.style.display = 'none');
优点:
- 立竿见影,无需插件,适合偶尔操作。
- 还能顺便锻炼下手速。
缺点:
- 页面刷新后水印会恢复,需要重复操作。
3. 油猴脚本自动化(推荐,一劳永逸)
如果你经常需要去水印(比如做技术博客、知识库、教程等),建议用油猴(Tampermonkey)插件,并安装如下自定义脚本:
// ==UserScript==
// @name 飞书文档去水印
// @namespace http://tampermonkey.net/
// @version 0.1
// @match https://*.feishu.cn/*
// @grant none
// ==/UserScript==
(function() {
'use strict';
setInterval(() => {
document.querySelectorAll('.ssrWaterMark').forEach(e => e.remove());
}, 1000);
})();
这个思路很常见(也是社区脚本的主流做法):定时查找并移除所有 .ssrWaterMark 元素,防止飞书“动态补水印”。
优点:
- 自动化、稳定持久;
- 打开任何飞书页面自动生效,适合懒人和重度用户。
缺点:
- 需要浏览器支持插件;
- 若飞书将来更改 class 名字,需要小幅调整。
三、过程思考 & 技术拓展
在安全领域,逆向和自动化是两项基本功。
即便别人已有成品方案,自己独立分析的过程,可以提升以下能力:
- 前端逆向分析能力
迅速定位目标元素、样式及其控制逻辑。 - 自动化脚本编写能力
根据分析结果,设计高效自动化清理方案。 - 安全产品与机制认知
明白水印的风险场景与管控思路,思考如何权衡安全与易用。
Tips:
本地去水印不会影响后端留痕,不涉及攻击,仅限个人学习与内部场景。
不要用于破坏公司安全或恶意泄露信息。
附:GitHub 已有类似开源项目
lbb00/remove-feishu-watermark.user.js
但自己动手、丰衣足食,才是安全人的日常。