You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何通过Selenium启用Chromium阅读器模式?该功能是否仍存在?

Chromium/Chrome 阅读器模式状态及Selenium使用方案

阅读器模式是否仍存在?

Chrome的阅读器模式(Reader Mode)目前依然存在,但默认隐藏了UI入口,且在Mac平台的官方Chrome/Chromium版本中,即使手动开启chrome://flags中的相关选项,也可能不会显示地址栏的阅读器图标。这是因为Google逐步将该功能转为后台可用状态,仅保留核心的DOM Distiller功能供程序调用,不再默认开放前端入口。

如何通过Selenium启用并使用阅读器模式?

1. 配置Chrome启动参数

需在Selenium的ChromeOptions中添加强制启用阅读器模式的参数,确保功能后台生效:

from selenium import webdriver
from selenium.webdriver.chrome.options import Options

chrome_options = Options()
# 启用阅读器模式核心组件DOM Distiller
chrome_options.add_argument("--enable-dom-distiller")
# 强制启用,绕过平台默认限制
chrome_options.add_argument("--force-enable-dom-distiller")
# 适配新版本Chrome的特性开关
chrome_options.add_argument("--enable-features=ReaderMode")

driver = webdriver.Chrome(options=chrome_options)

2. 触发阅读器模式的两种方法

方法一:直接导航阅读器模式专属URL

Chrome阅读器模式有固定URL格式:chrome-reader://<原网页URL>,将目标网页URL替换为此格式,即可直接加载纯正文视图:

target_url = "https://example.com/article"
reader_url = f"chrome-reader://{target_url}"
driver.get(reader_url)

# 提取页面纯正文内容
content = driver.find_element("tag name", "body").text

方法二:执行JavaScript触发模式

若直接导航阅读器URL失效,可通过执行Chrome内部API触发阅读器模式:

driver.get("https://example.com/article")

# 执行JS初始化阅读器模式
driver.execute_script("""
  if (window.chrome && chrome.distiller) {
    chrome.distiller.distill({
      url: window.location.href,
      onDistilled: function(result) {
        document.body.innerHTML = result.html;
      }
    });
  }
""")

# 等待视图加载完成后提取内容
import time
time.sleep(2)  # 根据页面加载速度调整等待时长
content = driver.find_element("tag name", "body").text

3. 注意事项

  • 不同Chrome/Chromium版本的参数和API可能略有差异,若上述方法失效,可尝试更新浏览器或调整启动参数(例如仅保留--enable-features=ReaderMode)。
  • 部分网站可能限制阅读器模式解析,此时可切换为你已熟悉的Firefox阅读器视图方案作为备选。

内容的提问来源于stack exchange,提问作者hotips

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.05 02:25:18