Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/objective-c/24.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Objective c 使用Swift或Objective C从活动Firefox会话获取URL_Objective C_Macos_Swift_Applescript - Fatal编程技术网

Objective c 使用Swift或Objective C从活动Firefox会话获取URL

Objective c 使用Swift或Objective C从活动Firefox会话获取URL,objective-c,macos,swift,applescript,Objective C,Macos,Swift,Applescript,是否可以使用Swift或Objective-C从活动firefox会话中检索URL。到目前为止,我可以使用applescript检索实际选项卡的名称,但无法检索URL 正确的方法是什么 即使使用Swift或ObjC,您仍然需要一个脚本桥,正如您所发现的,Firefox的脚本能力非常有限。但是,AppleScript可以通过Safari或Chrome实现这一点: tell application "Google Chrome" URL of tab 1 of window 1 end te

是否可以使用Swift或Objective-C从活动firefox会话中检索URL。到目前为止,我可以使用applescript检索实际选项卡的名称,但无法检索URL


正确的方法是什么

即使使用Swift或ObjC,您仍然需要一个脚本桥,正如您所发现的,Firefox的脚本能力非常有限。但是,AppleScript可以通过Safari或Chrome实现这一点:

tell application "Google Chrome"
    URL of tab 1 of window 1
end tell

--> "https://www.lds.org/?lang=eng"

tell application "Safari"
    URL of tab 6 of window 1
end tell

--> "http://www.nps.gov/webcams-mora/mountain.jpg"

如果没有安装像Selenium(或者,可能只有Selenium)这样的东西,AFAIK是不行的。如果您确实使用Selenium,则可以使用各种语言来获取“WebDriver”的
当前url
属性。
如果不使用Selenium,如果您想变得笨重(但有效),可以使用系统事件(AppleScript)执行命令-l(ell),然后使用命令-c突出显示url字段并将其复制到剪贴板,然后访问它。

谢谢您的回答。我已经找到了复制的解决方案,但不同的FF版本有时会出现问题。此外,我不希望应用程序表现得那么咄咄逼人,因为它令人不安。硒可能是一种解决方案。硒不能解决这个问题。Selenium只能生成新会话,然后您就可以获取该会话上的活动url,但不能获取由用户而不是Selenium生成的窗口的活动url。