Hacktoberfest 2026:维护者为十月标记出来的 issue,仍然开放、适合新手。 浏览 Hacktoberfest issue

[Bug]: Since 0.9.1, Linux launches chrome-headless-shell instead of Chromium

未关闭 适合新手
#2,382 1 条评论 0 个 reaction 已指派 0 人 在 GitHub 查看

维护者通常 2 天内回复

@cristianchiriac 已经在做这个了。

开始于 2026年10月15日。

  • #2384 来自 @cristianchiriac —— 未关闭

评估

难度
2/5
预计耗时
1-3 小时
新手友好度
72/100
Issue 类型
缺陷
描述清晰度
描述清楚
活跃度
活跃
技术栈
playwright, python
领域
backend, data

调研方向

从 crawl4ai 的 browser_manager 模块中的 BrowserManager._build_browser_args 开始,这里在 "chromium" 的情况下会丢弃 channel 的值,并阅读其旁边的 Windows 注释。在 Linux 上运行 issue 中的代码片段,确认它返回的是 None 而不是 "chromium"。完成标准是:Linux 保持与 0.9.0 一样传递 channel,同时仅限 Windows 的临时处理仍然在 sys.platform == "win32" 时生效。

由索引模型根据 Issue 内容生成。

描述

🐞 Bug 🩺 Needs Triage
crawl4ai version

0.9.1 to 0.9.5

Expected Behavior

On Linux, the default BrowserConfig (chrome_channel="chromium") keeps launching the same browser as in 0.9.0, full Chromium, and the Windows-specific fix stays limited to Windows.

Current Behavior

BrowserManager._build_browser_args no longer passes channel when it is "chromium", on every OS. The comment there explains it as a Windows fix: Playwright looks for a system Chrome there and exits. Without a channel, Playwright launches chrome-headless-shell instead of full Chromium on Linux too, and the two don't behave the same.

The difference we measured: full Chromium moves an http:// navigation to https:// on its own (status 307, internal redirect). chrome-headless-shell requests http:// as given. On sites that only serve HTTPS (port 80 closed, or 403/404 over HTTP), 0.9.0 gets the page and 0.9.1+ fails. On 48 company websites in that situation, 35 that load on 0.9.0 fail on 0.9.5 with Failed on navigating ACS-GOTO or a 403/404 page. The same sites load again on 0.9.5 when channel="chromium" is passed back.

Is this reproducible?

Yes

Code snippets
from crawl4ai.async_configs import BrowserConfig
from crawl4ai.browser_manager import BrowserManager

print(BrowserManager(browser_config=BrowserConfig())._build_browser_args().get("channel"))
# 0.9.0: "chromium" (full Chromium)  /  0.9.1+: None (chrome-headless-shell)
Suggested fix

Skip the default channel on Windows only (sys.platform == "win32"), or let BrowserConfig force it. We currently restore it by wrapping BrowserManager._build_browser_args.

主要语言
Python
星标
85.9k
派生
8.9k
平均合并
4 天 20 分钟
30 天内合并 PR
19

环境准备

从这里开始

  1. 先读完整个 Issue,再读项目的贡献指南。
  2. 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
  3. Fork 仓库,在一个分支上完成修改。
  4. 提交 Pull Request,并在描述里引用这个 Issue 编号。

unclecode/crawl4ai 的其他 Issue

查看 unclecode/crawl4ai 的全部 Issue

相似的 Issue

更多 Python Issue

把新 issue 发到你的邮箱

精选适合新手参与的 GitHub issue 摘要。