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

如何在不关闭Firefox的情况下通过命令行访问其本地存储?

无需关闭Firefox即可访问本地存储的方法

针对Debian上的Firefox ESR,有两种可行方案实现不关闭浏览器时通过命令行读取网站本地存储:

方案1:利用Firefox远程调试协议

这是最直接的命令行方案,步骤如下:

  1. 开启Firefox远程调试

    • 若Firefox未启动,用以下命令启动并开启调试端口:
      firefox-esr --remote-debugging-port=9222
      
    • 若Firefox已运行,手动修改配置:打开about:config,设置两项参数:
      • devtools.debugger.remote-enabled → true
      • devtools.debugger.prompt-connection → false(仅限本地使用,避免安全风险)
  2. 获取目标网站的调试连接地址
    用curl获取当前可调试的页面信息:

    curl http://localhost:9222/json
    

    在返回的JSON结果中,找到目标网站对应的webSocketDebuggerUrl字段(格式类似ws://localhost:9222/devtools/page/abc123)。

  3. 通过WebSocket读取localStorage
    先安装websocat(Debian仓库可直接获取):

    apt install websocat
    

    连接到目标WebSocket地址,发送调试命令获取指定键的本地存储值:

    echo '{"id":1,"method":"Runtime.evaluate","params":{"expression":"JSON.stringify(localStorage.getItem(\"你的目标键名\"))"}}' | websocat ws://localhost:9222/devtools/page/abc123
    

    返回的JSON中,result.value字段即为目标本地存储值。

方案2:自定义WebExtension扩展

如果需要长期自动化操作,可编写极简扩展:

  • 让扩展监听命令行参数或本地文件触发事件,读取目标网站的localStorage值,输出到标准输出或指定文件。
  • 安装扩展后,通过命令行调用Firefox的-jsconsole或扩展触发逻辑,直接获取值。
  • 该方式无需开启远程调试,安全性更高,但需要基础前端开发能力。

注意事项

  • 远程调试模式仅限本地使用,公共网络环境下请勿开启,使用后记得将devtools.debugger.remote-enabled改回false。
  • 若配合xdotools自动化操作,可将上述命令整合到脚本中,等待页面加载完成后执行读取逻辑。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 17:05:00