Clean Web Clipper 添加到 Chrome(免费)

适用人群

为 CAT 工具准备干净的原文

从网页粘贴过来的原文会带着导航,每个菜单项都变成一个句段:要跳过,要计数,最后还得在账单上解释。Clean Web Clipper 在文件进入你的工具之前就把它们去掉。

不是正文的句段

你导入一个网页,项目打开时,正文第一句之前已经有六十个句段:“跳到正文”“登录”、九个产品分类、一条 Cookie 提示,还有列出三十种语言的语言切换器。这些都不是需要翻译的内容,却都在文件里、在字数统计里,只能一个句段一个句段地锁定或删除。

接着是重复。同一块菜单在每个章节里再出现一次,页脚里又出现一次,于是用这个文件喂出来的翻译记忆库,开始把“继续阅读”当作真实句子的匹配推荐给你。导入之前清理原文只要几秒钟,事后清理翻译记忆库可就不是几秒钟的事了。

麻烦在接活之前就开始了。客户让你给“这个网页”报价,而你报的数字完全取决于你统计了什么:按原始网页统计,菜单也算在内;清理之后再统计,就不算。这种对话谁都不想来第二次。然后,你还在做的时候,客户又改了网页。报价当天剪藏的文件,头部记着网址和网页自己声明的日期,两个问题都能说清,谁也不必去回忆网页当时是什么样。

进入句段列表的是什么

六十个导航句段,一个都没有gov.uk:指南页面
---
title: "Register a trade mark: step by step"
source: "https://www.gov.uk/how-to-register-a-trade-mark"
extraction: "dom"
---

## Check whether your trade mark can be registered

Your trade mark must be unique. It can include words, sounds, logos, colours
or a combination of these.

You cannot register a trade mark that is offensive, describes the goods it
relates to, or is misleading.

准备原文文件

目标是一个导入工具之后,第一个句段就是正文第一句的文件。大部分工作靠两项设置完成,其中一项很容易设错。

  1. 从扩展程序图标打开设置,把保存位置指向这单活所在的文件夹,例如 jobs/client/source。原文文件应该和项目放在一起,而不是放进笼统的剪藏文件夹。
  2. 点击图标的动作设为“下载 .md 文件”或“保存到文件夹”,看哪种更适合你的文件管理习惯。无论哪种,最后得到的都是一个可以导入的文件,而不是还得先粘贴到别处的剪贴板内容。
  3. 把文件名模板设为 {date}-{domain}-{title}。客户的网页在你报价之后改过时,你要拿出来的就是这个采集日期。
  4. 如果要直接导入文件,就关闭 frontmatter 字段。YAML 头部也是文本,不认识它的工具会很乐意把 extraction 那一行当作待译句段推给你。
  5. 把图片设为跳过。Markdown 里的图片链接要么变成一个句段,要么变成一个内嵌标签,你得带着它走完整个文件,而那张图根本不属于正文。
  6. 只有一个章节在报价范围内时,就在网页上选中它,剪藏选中内容。报的是一个章节、交的却是整页,这种误会从采集那一刻就开始了。
  7. 在报价当天剪藏网页,并保留文件。谈定价格时原文是什么样,只有它能证明。

原文文件的设置

最容易出错的是 frontmatter 那一行。其余各项都是为了让句段列表里只剩真正的正文。

设置为什么这样设
点击图标下载 `.md`你要的是可以导入的文件,而不是需要粘贴的剪贴板
Frontmatter直接导入时关闭全部字段YAML 头部也是文本,不跳过它的工具会把它当成句段
图片跳过图片链接会变成句段或内嵌标签,而它并不是正文
文件名模板`{date}-{domain}-{title}`记下报价依据的是客户网页的哪个版本
保存位置项目文件夹原文属于这单活,网页改了它也还在
选中内容只剪藏报价范围内的章节范围蔓延常常就从一次整页采集开始
按网站规则客户域名 → 项目子文件夹,跳过图片老客户不必每次都重新决定
行内格式被转换,而不是被丢掉产品页面中的一段
The **starter plan** includes *up to five* seats. Additional seats are
billed monthly; see the [pricing page](https://example.com/pricing) or set
`SEATS` in your configuration file.

- Seats can be reassigned once per billing period.
- Unused seats are not carried over.

一句话里有四个内嵌标签:粗体、斜体、链接和代码。每一个都对应一种
Markdown 写法,CAT 工具会把它导入为内嵌标签。

三单活

报价依据正文,而不是网页外壳

客户发来一个网址,问多少钱。你剪藏这个网页:菜单、列出三十种语言的语言切换器、Cookie 提示和页脚,在文件生成之前就没了,所以你报价时统计的,正是需要翻译的文字。

这一点有实测数据,看的是重复的导航:在 109 个网页的语料上,重复的菜单行是 102 行,参与比较的引擎分别是 282、478 和 491 行。对于菜单在每个章节都重复一遍的网页,同一单活两份报价之间的差距,大部分就在这里。

做到一半改了的网页

做到第三天,客户提到市场部“稍微调整了几处”。你重新剪藏这个网页;第二个文件会带上数字后缀,和报价时的文件做一次 diff,就能看到多了两段、改了一个标题。

这样一来,关于范围的讨论就有文件为据,而不是比谁记得清楚。每个文件名里的采集日期说明哪个是哪个,date 字段则说明网页在两次采集时各自声明的日期。

用现成网站建立双语参考

客户网站已经有德语版。你把英文网页和德语网页先后剪藏进同一个项目文件夹。提取不依赖文本的语言,所以两个文件得到的是同样干净的结构,标题相同,顺序相同。

这一点是专门测过的:12 个欧洲国家排名前五十的网站中的 403 个网页,每个都在浏览器设为该国语言的情况下抓取,崩溃为零,也没有一个残留 HTML。对齐两个干净的文件是一件活;对齐两个塞满菜单的文件,是另一件更糟的活。

和常见的准备方式比一比

准备工作总归要做,问题是在哪里做。下面是译者现在做这件事的几个地方,以及各自的代价。

现在的做法得到什么代价是什么
复制粘贴进工具马上就有文字正文第一句之前有六十个导航句段,只能手动锁定或删除
工具自带的网页导入过滤器直接从网址建项目过滤器要按网站逐个配置,而网页外壳通常还是会漏过去
向客户要原文文件真正的文案,带上下文来得晚,或者是谁都打不开的 CMS 导出文件,或者根本不来
把网页存为 HTML 再清理留什么完全由你决定每个网页都要在文本编辑器里花上一个小时
Clean Web Clipper只有正文的 `.md` 文件,记着来源和日期没有 XLIFF,没有 TMX,不分段,不统计字数:这些仍归你的工具

导入不干净的时候

我的工具为什么把 YAML 头部当成了句段?

frontmatter 是文件顶部的文本,不认识 YAML 块的工具会把它当作内容。打算直接导入的文件,剪藏前在设置里关闭 frontmatter 字段,或者剪藏后删掉头部。另外保留一份带头部的副本是值得的:来源网址和日期就在那份副本里。

为什么还是有六十个导航句段混了进来?

网页根本没有文章正文时会出现这种情况:分类列表页、店铺首页、搜索结果页。这时扩展程序会报告“没有文章”,而不是把链接交给你,所以导入前先看看剪藏窗口里显示了什么。如果它确实返回了文章,而菜单也跟着进来了,那是网站把导航标记成了文章内容,这是基于链接密度的判断唯一看不穿的情况。

导入后行内格式为什么不对?

Markdown 用字符而不是标签来标记强调,所以把文件当纯文本导入的工具,会原样显示 bold,而不是显示为内嵌标签。请按 Markdown 导入,而不是按文本导入:大多数工具两种过滤器都有,对同一个文件的处理方式完全不同。

营销页面为什么少了一半文案?

营销页面常常由滚动时才渲染的设计模块组成,或者用标签页和折叠面板,只有展开时才插入文字。浏览器没有渲染出来的内容不在 DOM 里,也就无法采集。把网页滚动到底,展开各个部分,再剪藏一次;或者向客户要文案稿,对这种网页来说,那本来就是更好的原文。

它不是什么

它不是 CAT 工具:没有 XLIFF,没有 TMX,不做分段,也不统计字数。它不保留网页的 HTML,无法回填。输出是 Markdown,用来阅读和翻译,而不是再合并回网站。图片里的文字不会被提取。另外,界面语言和网页的语言是两回事:提取本身不依赖文本的语言。

添加到 Chrome(免费)完全免费:无需账号,无需注册,没有限制。

常见问题

能保留行内格式吗?
能。粗体、斜体、链接、代码和列表都会转换为对应的 Markdown,大多数 CAT 工具会把它们处理为内嵌标签。
任何语言的网页都能剪藏吗?
能。提取在 12 个欧洲国家排名前五十的网站中的 403 个网页上做过实测,每个网页都以该国语言抓取,没有崩溃,提取出的文章里也没有残留的 HTML。
能导出 XLIFF 吗?
不能。输出是 Markdown,各主流 CAT 工具都能导入。转换成交付格式的工作仍由你的工具完成。
界面支持我的语言吗?
很可能支持:界面有 19 种语言,并跟随浏览器的语言设置,包括英语、俄语、德语、法语、西班牙语、意大利语、荷兰语、波兰语、巴西葡萄牙语、罗马尼亚语、瑞典语、土耳其语、乌克兰语、捷克语、中文(简体和繁体)、日语、韩语和越南语。提取本身适用于任何语言的网页。
内容会被发送到翻译服务吗?
不会。剪藏内容从不上传,只会进入你的剪贴板或硬盘,别无去处。
能处理非拉丁文字和从右到左书写的文本吗?
能。文本按网页渲染的样子逐字采集,无论是哪种文字,都不做转写,不调整顺序,也不做规范化处理。提取依据的是网页结构,而不管用的是什么字母,结构都是一样的。
能帮我统计字数吗?
不能。它不计数,不分段,也不做任何分析,输出就是一个 Markdown 文件。它改变的是需要统计的内容:在你的工具看到之前,先把导航去掉。
能完全关掉 YAML 头部吗?
能。每个 frontmatter 字段(title、source、author、date、extraction)都可以单独关闭,可以全局设置,也可以只对某个网站设置。全部关闭后,文件从正文的第一个标题开始。
能剪藏客户的测试环境网站吗?
能,只要它能在你的浏览器里显示出来,包括需要基本身份验证或 IP 白名单的网站,因为扩展程序读取的是你的会话已经加载好的页面。它不会自己再去请求这个网页,所以测试网站不会被触碰,也不会被重复抓取。
双栏布局导出后顺序会乱吗?
不会。文章正文按它在文档中的顺序输出,而不是按屏幕上的位置。放在正文旁边的侧边栏会作为页面零件去掉,不会和正文交错在一起,所以文案能按顺序读下来:这正是句段列表需要的,按屏幕顺序采集反而做不到。