【问题标题】:How to get the active tab url in Node js?如何在 Node js 中获取活动标签 url?
【发布时间】:2020-12-31 03:38:21
【问题描述】:

我正在寻找一种解决方案,从浏览器的活动选项卡(Chrome、Firefox、Opera、Safari 等)获取使用 Electron js 制作的跨平台桌面应用程序的 url。

我找到了一个解决方案,让 mac 使用“applescript”获取“Chrome”和“Safari”的活动标签 URL,但仍然找不到“Firefox”的方法。

有没有什么聪明的方法可以使用 Node js 在 Mac、Windows 和 Linux 中获取浏览器的活动选项卡的 url?

【问题讨论】:

  • 您是否在问如何从单独的电子(铬)应用程序中获取浏览器中标签的网址?
  • 仅供参考,用户使用的浏览器甚至不完全清楚?它可能是许多不同的浏览器。甚至可以同时运行不止一个。可能会打开多个窗口,每个窗口都有自己的活动选项卡。
  • @Samathingamajig ,是的,我正在从一个单独的电子(铬)应用程序中寻找当前活动标签的浏览器 URL。
  • @jfriend00 ,我正在寻找特定于浏览器的代码。这意味着如果浏览器是 chrome,那么 chrome 的活动选项卡的 url。

标签: javascript node.js url electron


【解决方案1】:

对于 linux 中的 firefox,您将找到该文件 -> ~/.mozilla/firefox/iq8hatig.default/sessionstore-backups/recovery.jsonlz4

要在 nodejs 中解析这个文件,你可以使用https://www.npmjs.com/package/bookmark-parser

    BMParser.readFromJSONLZ4File("~/.mozilla/firefox/iq8hatig.default/sessionstore-backups/recovery.jsonlz4")
        .then(result => { 
          console.log(result.windows)
       }).catch(err => {
         res.send(err);
       });

此文件中的最后一个条目是活动选项卡。

【讨论】:

  • 感谢您的帮助。我会在 Firefox 上试试这个。你知道其他浏览器有什么办法吗??
  • 在 linux for chrome 中:~/'.config/google-chrome/Default/Current Session'
  • 非常感谢。 windows安装目录的chrome文件夹中是否有类似文件?
【解决方案2】:

这是您可以找到浏览器 URL 的代码

let url = window.location.href

【讨论】:

  • 我不是在寻找那个。我想从桌面应用检测另一个浏览器的打开 url。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多