Clean Web Clipper 添加到 Chrome(免费)

内部机制

它如何工作,又在哪里止步

这里没有任何魔法。提取流程从不调用服务器;扩展程序唯一通信的地址是我们的统计端点。整个流程就在你正在看的页面中运行,只需几十毫秒。

找到文章

扩展程序首先查找文章通常所在的那些明显容器。如果没有这样的容器(很多真实网站确实没有),它就改为测量文本密度:哪个区块包含最多不在链接中的段落文本。仍然包含几乎全部这些文本的最窄区块胜出。

如果一个区块的文本大多是链接文字,那它是菜单或信息流,不是文章,会被排除;除非它包含超过大约 1200 个字符的真实文本,因为长文章本来就可能包含很多链接。

去掉页面杂项

接着去掉已知的非内容元素:导航、横幅、分享栏、Cookie 提示、分页器、“相关阅读”信息流和 Logo 条。重复的行也会被删除,因为在每个版块都重复出现的导航,是剪藏页面中最大的噪音来源。

其他剪藏工具保留的内容

[跳到正文](#main) [登录](/login) [注册](/register)
[首页](/) [新闻](/news) [体育](/sport) [文化](/culture) [更多](/more)

我们使用 Cookie 及类似技术来改善你的体验。
[全部接受] [管理偏好]

# 你要看的那篇文章

正文真正的第一段。

<div class="promo-inline">

## 相关阅读
[另一个标题](/a) [又一个标题](/b) [还有第三个](/c)

最终进入笔记的内容

# 你要看的那篇文章

正文真正的第一段。
同一个新闻页面:一般剪藏工具保留了什么,Clean Web Clipper 保存了什么

转换

表格由扩展程序自己序列化,而不是交给通用插件,因为通用转换器遇到包含列表或代码块的单元格就会出错。代码块的语言取自页面自身的标记。引用链接会在清理器删除它们所依赖的 id 之前,被收集为 Markdown 脚注:顺序很重要,一旦弄错,所有脚注都会悄无声息地丢失。

在哪里止步

商品页、信息流或搜索结果页上没有文章。扩展程序会检查生成好的 Markdown:如果其中超过四分之一位于链接文字中,它就报告“没有文章”,而不是给你三百个链接。这种拒绝是有意为之的,这也是这里的字符数比总会返回点什么的工具更低的原因。

它不做什么

常见问题

剪藏一次需要多长时间?
普通文章只需几十毫秒;包含几百个脚注的超长页面需要几百毫秒。耗时显示在剪藏窗口的角落里。
在单页应用上能用吗?
能。它读取渲染完成后的 DOM,所以用 JavaScript 构建的文档网站,你看到的是什么,剪藏下来的就是什么。
jsonld-articlebody 提取模式是什么?
有些页面把文章文本放在结构化数据里,却始终没有把它渲染出来。当结构化数据中的文本明显多于 DOM 时,扩展程序就使用结构化数据,并记录下这一点。