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

Python webbrowser模块调用Chrome跨设备路径不兼容问题求解

现有代码问题排查
  • 缺少os模块导入,调用os.walk、os.path.join等方法时会直接报错
  • Program Files (x86)路径拼写错误,缺少路径中间的空格,系统无法识别该路径
  • website变量未提前定义,拼接URL时会抛出变量未找到异常
  • 使用os.walk全盘遍历Program Files目录效率极低,且部分受系统保护的目录没有访问权限,会导致遍历中断
可行实现方案

Chrome在Windows下的默认安装路径是固定的子目录,不需要全局遍历,直接判断两个预设的标准路径是否存在即可,执行效率更高也不会触发权限问题。

很快,若使用64位安装包,Google Chrome在Windows系统下将默认安装到C:\Program Files\文件夹。安装在C:\Program Files (x86)\文件夹的64位Chrome版本仍可正常运行和更新。

完整实现代码如下:

import os
import webbrowser

def get_chrome_path():
    # 预设Chrome的两个官方标准安装路径
    chrome_paths = [
        r"C:\Program Files\Google\Chrome\Application\chrome.exe",
        r"C:\Program Files (x86)\Google\Chrome\Application\chrome.exe"
    ]
    for path in chrome_paths:
        if os.path.exists(path):
            return path
    return None

if __name__ == "__main__":
    target_url = "https://pythonexamples.org"
    chrome_path = get_chrome_path()
    if chrome_path:
        # 找到Chrome则优先用Chrome打开
        webbrowser.register('chrome', None, webbrowser.BackgroundBrowser(chrome_path))
        webbrowser.get('chrome').open(target_url)
    else:
        # 未找到Chrome则降级调用系统默认浏览器打开,保证功能可用
        webbrowser.open(target_url)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 17:30:05