gpt4 book ai didi

swift - 如何获取 Safari 中每个窗口的每个选项卡中所有打开的 URL?

转载 作者:行者123 更新时间:2023-11-30 13:06:14 27 4
gpt4 key购买 nike

我正在使用 NSAppleScript 告诉 Safari 返回所有打开的选项卡的 URL,如下所示:

let script = NSAppleScript.init(source: "tell application \"Safari\" to get URL of every tab of every window")
var errorInfo: NSDictionary?
let eventDescriptor:NSAppleEventDescriptor = (script?.executeAndReturnError(&errorInfo))!
print(eventDescriptor.stringValue)

以上返回零。告诉返回当前 URL 确实有效。

"tell application \"Safari\" to return URL of front document as string"
<小时/>

如何获取每个窗口的每个选项卡中所有打开的 URL?

最佳答案

结果将是一个表示字符串列表列表的 NSDescriptor。你要么:

  1. 在返回之前,使用合适的文本项分隔符将列表强制转换为 AppleScript 中的字符串,然后您可以将字符串拆分为 Swift 中的字符串列表(作弊),
  2. 使用几个嵌套循环自行解压列表描述符(乏味),或者
  3. 放弃 NSAppleScript 并使用 AppleScript-ObjC bridge相反(设置起来有点繁琐,但迄今为止最简单且最容易使用)。

关于swift - 如何获取 Safari 中每个窗口的每个选项卡中所有打开的 URL?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39327081/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com