AppleScript单击OK并从Firefox链接保存文件

AppleScript单击OK并从Firefox链接保存文件,applescript,Applescript,所以我有一个页面,上面有大约60个链接,带有随机URL,每个链接都需要单独点击和下载 我正在编写一个基本的脚本,用tab键切换到下一个链接,按enter键,然后“确定”下载到桌面 我是新来的,但我似乎无法得到弹出的“浮动”窗口,让我按键“返回”或单击“确定”。我希望将文件保存到桌面,但我似乎无法在应用程序中按标题引用窗口,或者猜测索引号或窗口ID 非常感谢您的帮助 我还看到了脚本编辑器中的字典,以及Firefox“窗口”的许多属性,抛出语法和其他错误 tell application "Syst

所以我有一个页面,上面有大约60个链接,带有随机URL,每个链接都需要单独点击和下载

我正在编写一个基本的脚本,用tab键切换到下一个链接,按enter键,然后“确定”下载到桌面

我是新来的,但我似乎无法得到弹出的“浮动”窗口,让我按键“返回”或单击“确定”。我希望将文件保存到桌面,但我似乎无法在应用程序中按标题引用窗口,或者猜测索引号或窗口ID

非常感谢您的帮助

我还看到了脚本编辑器中的字典,以及Firefox“窗口”的许多属性,抛出语法和其他错误

tell application "System Events"
tell application "Firefox" to activate
tell window "$thewindowtitle"
    keystroke tab
    delay 1.0
    keystroke return
end tell
tell application "Firefox"
    tell window visible
    click button "OK"
    end tell
end tell
end tell
end tell

谢谢

Firefox似乎不支持运行JavaScripts,但在Safari中,您可以使用如下脚本获取所有链接的URL:

set l to {}
tell application "Safari" to tell document 1
    set n to do JavaScript "document.links.length"
    repeat with i from 0 to (n - 1)
        set end of l to (do JavaScript "document.links[" & i & "].href")
    end repeat
end tell
set text item delimiters to linefeed
set the clipboard to l as text
然后在默认浏览器中打开它们:

IFS=$'\n' for u in $(pbpaste); do open "$u"; done
或使用卷曲:

cd ~/Desktop/; IFS=$'\n'; for u in $(pbpaste); do; curl "$u" -O; done

从另一端看。在preferences>Firefox preferences>General>Applications中,我将其从ask更改为保存在上面写着“选择Firefox处理下载文件的方式”的位置。它只是拯救了他们所有人。在我的例子中,我在Automator中创建了一个工作流来从url下载图像。这对我来说非常有用。

从我目前看到的情况来看,延迟是问题的一个主要部分。我们确定Firefox不支持运行JavaScripts吗?有官方文件吗?实际上,在Firefox上通过AS执行JS的方法会更好。我只是说在它的AppleScript字典中没有运行JavaScripts的命令。