从0到1掌握DOM Distiller:Chrome阅读器模式核心技术完全指南

发布时间:2026/8/14 20:32:59

从0到1掌握DOM Distiller:Chrome阅读器模式核心技术完全指南
从0到1掌握DOM DistillerChrome阅读器模式核心技术完全指南【免费下载链接】dom-distillerDistills the DOM项目地址: https://gitcode.com/gh_mirrors/do/dom-distillerDOM Distiller是Chrome阅读器模式的核心技术它通过提取网页核心文本并剥离非必要内容为文章和类文章网页提供更优质的阅读体验。作为开源项目它不仅驱动着Chrome Android和桌面版的阅读器模式还支持Chrome iOS上的阅读列表功能是提升网页阅读体验的终极解决方案。 什么是DOM DistillerDOM Distiller本质上是一个网页内容提炼工具它能够智能识别网页中的核心内容如文章正文、图片并过滤掉广告、导航栏、侧边栏等干扰元素。该项目松散基于Boilerpipe技术开发专注于提供简洁、专注的阅读环境。目前DOM Distiller已被广泛应用于多个项目和功能中Chrome Android和桌面版的阅读器模式Chrome iOS上的阅读列表功能 如何在Chrome中使用阅读器模式安卓设备使用方法阅读器模式已在Android版Chrome中正式发布任何更新到最新版本的Chrome都能使用访问非移动友好的文章页面当屏幕底部出现显示简化视图信息栏时点击它即可如需启用该功能可能需要先在辅助功能设置中开启桌面版Chrome使用步骤桌面版Chrome的阅读器模式仍在开发中截至M80版本可通过以下步骤激活实验性预览打开桌面版Chrome浏览器导航至chrome://flags使用页面内搜索框搜索enable-reader-mode 或者直接访问chrome://flags#enable-reader-mode点击下拉框并选择已启用出现提示时点击页面底部的立即重启访问文章或类文章页面地址栏会出现阅读器模式图标点击即可进入 DOM Distiller的核心技术原理DOM Distiller的工作流程主要包括以下几个关键步骤1. 内容提取DOM Distiller通过分析网页DOM结构识别并提取核心内容块。这一过程主要由java/org/chromium/distiller/extractors/ArticleExtractor.java实现它使用多种启发式算法来区分内容和非内容元素。2. 内容过滤提取内容后系统会应用一系列过滤器去除冗余信息。关键过滤器包括BoilerplateBlockFilter.java过滤样板内容MinWordsFilter.java过滤字数过少的内容块KeepLargestBlockFilter.java保留最大的内容块3. 内容优化最后系统会对提取的内容进行优化包括标题识别与提取段落重组图片优化格式标准化 如何搭建DOM Distiller开发环境前提条件在开始之前确保安装以下依赖Google Chrome浏览器Git工具获取代码切换到你想要存放代码的目录不要放在Chromium主 checkout 目录内克隆仓库git clone https://gitcode.com/gh_mirrors/do/dom-distiller代码将位于新创建的dom-distiller文件夹中安装git hooks进入项目目录并运行./create-hook-symlinksUbuntu/Debian系统额外步骤在dom-distiller文件夹中运行sudo ./install-build-deps.shMac OS X系统额外步骤安装JDK 7安装Homebrew使用Homebrew安装必要工具brew install ant python brew install protobuf --with-python安装Python依赖sudo easy_install pip pip install --user selenium 构建与测试DOM DistillerDOM Distiller使用ant作为构建工具所有可用目标可以通过ant -p列出。常用构建命令ant test运行所有测试ant gwtc将.class和.java文件编译为JavaScript生成的独立JavaScript位于war/domdistiller/domdistiller.nocache.jsant extractjs创建独立JavaScript文件输出到out/domdistiller.jsant package将主要构建产物复制到out/package文件夹运行测试可以使用以下命令运行特定测试ant test -Dtest.filter*.FilterTest.*:*Foo*-*Bar* 调试DOM Distiller交互式调试使用Chrome开发者工具调试DOM Distiller运行ant extractjs.jstests或ant test更新测试JavaScript在Chrome中打开war/test.html打开开发者工具的Console面板Ctrl-Shift-J或Cmd-Option-I运行所有测试org.chromium.distiller.JsTestEntry.run()运行特定测试org.chromium.distiller.JsTestEntry.runWithFilter(MyTestClass.testSomething)开发者扩展ant package会在out/extension下生成一个未打包的Chrome扩展添加方法如下访问chrome://extensions启用开发者模式选择加载已解压的扩展并指向out/extension文件夹该扩展支持分析提取代码并在开发者工具中添加了一个面板可用于在被检查的页面上触发提取。 贡献代码DOM Distiller使用Chromium的协作工具代码审查托管在Chromium Gerrit上。贡献代码前需要安装depot_tools。代码格式化提交代码前请运行以下命令以遵循DOM Distiller的代码格式指南git cl format提交变更创建新的本地分支并提交更改运行git cl upload将更改上传到Chromium Gerrit等待审核通过后点击Submit to CQ合并更改 常见问题解答如何报告bugbug和功能请求在Chromium的issue跟踪器中进行跟踪DOM Distiller的bug请提交到component:UIBrowserReaderMode。应报告的bug类型包括崩溃、错误页面和其他类似技术问题提取质量差如非必要图片或缺失文本阅读器模式在不应出现的页面上提供如登录页面或在应出现的页面上不提供如新闻文章如何在Chrome中运行DOM Distiller设置环境变量export CHROME_SRC/path/to/chromium/src export DOM_DISTILLER_DIR/path/to/dom-distiller运行ant package并将生成的文件复制到Chrome中构建并运行Chromeautoninja -C out/Debug chrome out/Debug/chrome --enable-dom-distiller通过以上指南你现在已经掌握了DOM Distiller的核心概念、使用方法和开发流程。无论是作为普通用户享受更优质的阅读体验还是作为开发者参与项目贡献DOM Distiller都为你提供了简单而强大的工具和技术。开始探索这个令人惊叹的项目体验网页内容提炼的强大能力吧【免费下载链接】dom-distillerDistills the DOM项目地址: https://gitcode.com/gh_mirrors/do/dom-distiller创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

相关新闻

Burpsuite下载CA证书及安装教程

Burpsuite下载CA证书及安装教程

2026/8/14 20:32:59

Burpsuite要抓取https流量包,计算机需要安装Burpsuite的CA证书,步骤如下:1:burpsuite打开代理设置,按图中顺序操作2:按照图中所示下一步操作 3:在输入框里给导出证书命名,后缀为der,…

刑事附带民事案件怎么找合适律师 赔偿主张与代理服务要点全面梳理

刑事附带民事案件怎么找合适律师 赔偿主张与代理服务要点全面梳理

2026/8/14 20:32:59

‍一、前言很多人碰到刑事附带民事案件时都容易犯难:一边盯着被告人的刑事责任追究进度,怕对方轻判漏罚;一边算着自己的医疗费、误工费、财物损失,怕该拿的赔偿拿不到手。不少人要么找了只懂刑事辩护的律师,对赔偿项目…

Playnite游戏库管理器完整攻略:告别多平台切换,一个界面统一所有游戏

Playnite游戏库管理器完整攻略:告别多平台切换,一个界面统一所有游戏

2026/8/14 20:32:59

Playnite游戏库管理器完整攻略:告别多平台切换,一个界面统一所有游戏 【免费下载链接】Playnite Video game library manager with support for wide range of 3rd party libraries and game emulation support, providing one unified interface for yo…

Qt 的右键菜单,为什么死活不肯像鼠标事件那样“冒泡”?(事件系统源码级真相)

Qt 的右键菜单,为什么死活不肯像鼠标事件那样“冒泡”?(事件系统源码级真相)

2026/8/14 21:33:01

目录 一、先给结论 二、你以为的 Qt vs Qt 实际的事件模型 直觉模型(很多人以为) Qt 实际模型 三、为什么 Qt 故意不冒泡?(3 个硬理由) ① 平台层已经“替你拍板”了(Win32 原罪) ② UI 语…

基于ESP32与BLE的AI编程助手实体化:打造可交互的代码状态监工

基于ESP32与BLE的AI编程助手实体化:打造可交互的代码状态监工

2026/8/14 21:33:01

1. 项目概述:当代码搭子有了实体,编程不再孤单最近在折腾一个挺有意思的小玩意儿,我把它叫做“实体监工代码搭子”。简单说,就是把AI编程助手Claude Code的CLI(命令行界面)状态,通过一个实体的电…

OpenClaw强化学习框架:稀疏奖励环境下的高效探索算法解析与实践

OpenClaw强化学习框架:稀疏奖励环境下的高效探索算法解析与实践

2026/8/14 21:33:01

1. 项目概述:从“爪子”到“大脑”的智能进化最近在梳理一些经典的强化学习项目,OpenClaw 这个名字又一次跳进了我的视野。乍一听,你可能会觉得这是一个关于机械臂或者机器人抓取的开源库,毕竟“Claw”直译就是“爪子”。但如果你…

华师计算机考研838专业课:数据结构与C语言核心考点与高效备考策略

华师计算机考研838专业课:数据结构与C语言核心考点与高效备考策略

2026/8/14 21:33:01

如果你正在准备华中师范大学计算机考研,特别是专业课838(数据结构与C语言程序设计),那么这篇文章就是为你准备的。每年都有大量考生在复习时陷入一个误区:把时间平均分配给所有知识点,结果发现考试时重点没…

AI服务器机箱焊缝打磨费工?平整度控制三招

AI服务器机箱焊缝打磨费工?平整度控制三招

2026/8/14 21:33:01

所谓机箱焊缝平整度控制,就是在焊接 AI 服务器机箱这类薄板钣金结构件时,让焊缝与母材平滑过渡、无尖锐毛刺、无明显氧化发黑,从而大幅减少焊后打磨、校正、整形工序,直接适配后续的钝化、喷塑等表面处理流程。AI 算力机柜常年处于…

AI小白必看:轻松掌握AI Agent四大核心组件

AI小白必看:轻松掌握AI Agent四大核心组件

2026/8/14 21:23:01

本文深入浅出地解析了AI Agent的四大核心组件:大脑(推理引擎)、工具(外部交互接口)、记忆(短期与长期)和规划(任务拆解与调整)。通过实例说明,帮助读者理解AI…

比较好的亚太EMBA,问了6位校友师资差别真的挺大

比较好的亚太EMBA,问了6位校友师资差别真的挺大

2026/8/13 11:01:28

比较好的亚太EMBA核心差异先看什么?对于希望兼顾工作与系统管理能力提升的亚太区高管而言,筛选匹配度高的EMBA项目时,师资配置是决定学习体验与实际收获的核心要素之一。我们结合3-4个公开信息透明、办学历史较长的亚太区主流EMBA项目特点&am…

备考3个月对比6份资料 海外游学的亚洲EMBA面试注意点

备考3个月对比6份资料 海外游学的亚洲EMBA面试注意点

2026/8/14 10:48:24

备考海外游学的亚洲EMBA面试,核心要围绕项目国际化设计逻辑、个人跨文化管理经验匹配度两个维度准备,避免把游学模块等同于普通旅游参访的认知偏差。不少备考者花3个月对比6份资料,却容易忽略面试官对“国际视野落地能力”的考察——比如香港…

比较好的国内EMBA,问了二十位校友聊透人脉价值

比较好的国内EMBA,问了二十位校友聊透人脉价值

2026/8/13 17:17:06

比较好的国内EMBA核心差异体现在哪些方面?比较好的国内EMBA的核心长期价值,很大程度上依托于校友网络的连接质量与资源生态的活跃度,这也是不少高管在择校时优先考量的因素。我们结合3-4个市场关注度较高的项目公开信息,从课程、师…

大连网站建设找简维科技:为您打造懂业务更懂用户的数字化转型引擎

大连网站建设找简维科技:为您打造懂业务更懂用户的数字化转型引擎

2026/8/14 0:01:53

在这个数字化浪潮席卷全球的今天,企业想要在激烈的市场竞争中站稳脚跟,拥有一张好看的“数字名片”已经远远不够了。很多老板在刚开始接触互联网业务时,都有一个共同的困惑:为什么我花了钱建的网站,就像是在真空中自嗨?访客进来转了两圈就跑了,线索石沉大海,甚至连客服…

临沂网站建设铭镇:深耕本土数字生态,以匠心铸就企业品牌核心竞争力

临沂网站建设铭镇:深耕本土数字生态,以匠心铸就企业品牌核心竞争力

2026/8/14 0:01:54

在这个流量为王、视觉至上的互联网时代,对于临沂乃至整个山东乃至全国的传统中小企业来说,拥有一张精美的“数字名片”早已不再是可选项,而是生存的必答题。每当夜幕降临,沂河两岸灯火辉煌,物流之都的喧嚣逐渐沉淀为对未来的思考。我们常常听到老板们在茶余饭后探讨:为什…

Flutter与OpenHarmony实现剧本杀组队表单开发实战

Flutter与OpenHarmony实现剧本杀组队表单开发实战

2026/8/14 0:01:54

1. 项目概述在移动应用开发领域,跨平台框架Flutter因其高效的开发体验和出色的性能表现,已经成为众多开发者的首选。而OpenHarmony作为新兴的操作系统平台,其开放性和灵活性为开发者提供了全新的可能性。本文将聚焦于一个实际应用场景——剧本…

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

摆脱论文困扰!盘点2026年全网爆红的的AI论文写作工具

2026/8/8 5:07:31

一天写完毕业论文在2026年已不再是天方夜谭。2026年最炸裂、实测能大幅提速的AI论文写作工具,覆盖选题构思、文献整理、内容生成、格式排版等核心场景,真正帮你高效搞定论文难题。 一、全流程王者:一站式搞定论文全链路(一天定稿首…

导师推荐!2026最新AI论文工具测评与实用推荐

导师推荐!2026最新AI论文工具测评与实用推荐

2026/8/9 13:42:46

2026年真正好用的AI论文工具,核心看生成的论文质量、低AI味、格式正确、学术适配四大指标。综合实测,千笔AI、ThouPen、豆包、DeepSeek、Grammarly 是当前最值得推荐的梯队,覆盖从免费到付费、从中文到英文、从文科到理工的全场景需求。 一、…

告别游戏崩溃:XCOM 2模组管理器的智能革命

告别游戏崩溃:XCOM 2模组管理器的智能革命

2026/8/14 19:35:14

告别游戏崩溃:XCOM 2模组管理器的智能革命 【免费下载链接】xcom2-launcher The Alternative Mod Launcher (AML) is a replacement for the default game launchers from XCOM 2 and XCOM Chimera Squad. 项目地址: https://gitcode.com/gh_mirrors/xc/xcom2-lau…