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

关于将谷歌浏览器导出的Cookie导入Safari浏览器的技术问询

将谷歌浏览器导出的Cookie导入Safari浏览器的方法

嘿,刚好之前帮朋友解决过类似的需求,给你整理几个靠谱的方法,亲测在最新的macOS和Safari上能用:


方法一:手动修改Safari的Cookie数据库(适合少量Cookie)

这个方法需要用到终端和SQLite命令,步骤有点繁琐,但胜在不需要额外工具:

  1. 先彻底关闭Safari:右键Dock里的Safari图标选「退出」,或者打开「活动监视器」找到Safari进程强制结束,一定要确保没有后台残留,不然数据库会被锁死无法修改。
  2. 备份Cookie数据库(重要!):打开终端,输入以下命令备份原文件,避免出错后无法恢复:
    cp ~/Library/Containers/com.apple.Safari/Data/Library/Cookies/Cookies.db ~/Desktop/Safari_Cookies_Backup.db
    
  3. 处理导出的JSON Cookie:你用Cookie-Editor导出的是JSON格式,每个Cookie条目里的字段需要对应到Safari数据库的字段:
    Cookie-Editor字段Safari数据库字段说明
    domainhost_key要加.前缀,比如原google.com改成.google.com
    namename直接用原Cookie名
    valuevalue直接用原Cookie值
    pathpath一般是/,和导出的一致就行
    expirationDateexpires转换成Unix时间戳(比如ISO格式2025-01-01T00:00:00Z对应1735689600),会话Cookie填0
    secureis_secure布尔值转成1(是)或0(否)
    httpOnlyis_http_only同样转成1或0
    sameSitesame_site对应0(None)、1(Lax)、2(Strict),没有的话填0
  4. 插入Cookie到数据库:在终端输入以下命令打开Safari的Cookie数据库:
    sqlite3 ~/Library/Containers/com.apple.Safari/Data/Library/Cookies/Cookies.db
    
    然后对每个Cookie执行插入语句,比如:
    INSERT INTO cookies (host_key, name, value, path, expires, is_secure, is_http_only, same_site) VALUES ('.google.com', 'NID', 'abc123xyz', '/', 1735689600, 1, 0, 1);
    
    全部插入完成后,输入.quit退出SQLite。
  5. 重启Safari:打开Safari后,访问对应的网站就能看到Cookie已经生效了。

方法二:批量处理脚本(适合大量Cookie)

如果导出的Cookie很多,手动输入太麻烦,可以写个简单的Python脚本自动转换格式并插入:

  1. 把Cookie-Editor导出的JSON文件保存为cookies.json,放在桌面。
  2. 编写Python脚本(比如cookie_import.py),内容大概是这样:
    import json
    import sqlite3
    from datetime import datetime
    
    # 读取导出的Cookie
    with open('/Users/你的用户名/Desktop/cookies.json', 'r') as f:
        cookies = json.load(f)
    
    # 连接Safari的Cookie数据库
    conn = sqlite3.connect('/Users/你的用户名/Library/Containers/com.apple.Safari/Data/Library/Cookies/Cookies.db')
    cursor = conn.cursor()
    
    for cookie in cookies:
        # 转换过期时间
        if cookie.get('expirationDate'):
            expires = int(datetime.fromisoformat(cookie['expirationDate'].replace('Z', '+00:00')).timestamp())
        else:
            expires = 0
        # 转换SameSite
        same_site_map = {'None':0, 'Lax':1, 'Strict':2}
        same_site = same_site_map.get(cookie.get('sameSite'), 0)
        # 插入语句
        cursor.execute('''
            INSERT INTO cookies (host_key, name, value, path, expires, is_secure, is_http_only, same_site)
            VALUES (?, ?, ?, ?, ?, ?, ?, ?)
        ''', (
            '.' + cookie['domain'] if not cookie['domain'].startswith('.') else cookie['domain'],
            cookie['name'],
            cookie['value'],
            cookie['path'],
            expires,
            1 if cookie['secure'] else 0,
            1 if cookie['httpOnly'] else 0,
            same_site
        ))
    
    # 提交更改并关闭连接
    conn.commit()
    conn.close()
    
  3. 替换脚本里的「你的用户名」为实际的Mac用户名,然后在终端运行脚本:
    python3 /Users/你的用户名/Desktop/cookie_import.py
    
  4. 运行完成后重启Safari即可。

注意事项

  • 操作前一定要关闭Safari,否则数据库处于锁定状态,修改不会生效。
  • 有些网站的Cookie有特殊属性(比如partitionKey),如果导入后网站还是无法识别,可能需要额外处理这些字段,但大部分普通场景上述方法足够。
  • 如果你是Windows系统的Safari,路径会不一样,需要找到对应的Cookie数据库位置。

备注:内容来源于stack exchange,提问作者Yasas Lowe

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.04.23 11:37:49