如何从脚本获取 Firefox 当前的用户代理?

如何从脚本获取 Firefox 当前的用户代理?

我想在 bash 中获取 Firefox 的用户代理字符串代理,然后在脚本中使用它。它必须即时提取,而不是手动进入about:support或复制它,以便脚本在升级 Firefox 后使用新的脚本。我想到了三种方法:

  1. 从 Firefox 的文件中获取它。然而,据我所知,它没有存储在一个地方的任何地方。我尝试解析/usr/lib/firefox/libxul.so但没有成功。
  2. 访问“我的用户代理是什么”网站之一并从那里获取它。然而,Firefox 似乎无法从 bash 转储页面的 HTML,所以我也不能这样做。
  3. 自己构建字符串。有些部分在这台机器上永远不会改变,所以我只需要填充那些会改变的部分:
    Mozilla/5.0 (X11; Linux x86_64; rv:[geckoversion]) Gecko/20100101 Firefox/[firefoxversion])
    我可以通过运行找到 firefox 版本firefox --version,但真正的问题是我找不到 gecko 版本。
    MDN 网络文档声称“在最近的浏览器中,geckoversion与”相同,firefoxversion但这里似乎并非如此,因为我的 Firefox 用户代理有rv:109.0Firefox/118.0

所以我的问题是:如何通过以下任一方式有效获取当前 Firefox 版本的用户代理:

  • 如果可能的话,始终从 Firefox 的文件中提取它
  • 或者让 Firefox 转储包含用户代理的 HTML 页面
  • 或者找出 Gecko 版本,以便我可以自己完成用户代理

提前致谢! (*≧ω≤*)

相关内容