我正在嘗試編寫一些自動化代碼(主要是在Ruby Selenium中)。在某些時候,在Safari中打開文件選擇器,以便用戶可以選擇要上傳的文件。硒不能處理這個問題,但我認爲AppleScript應該可以。我是AppleScript的新手,無法找到自動執行文件選擇器對話框的人的任何樣板代碼。我正在閱讀AppleScript文檔,但任何想法都會對您有所幫助。使用AppleScript在Safari中選擇文件
5
A
回答
4
一些更多的搜索,我發現這裏有很大答案:Applescript file dialog with UI scripting
這裏是我最終使用:
on run argv
tell application "Safari"
activate
-- Usage check
set argc to count argv
if argc is not greater than 0 then
return "Usage: SafariFileChooser file_name [window_name]"
end if
-- The file we will choose to open
set file_name to item 1 of argv
-- Flip to the named window, if specified
if argc is equal to 2 then
set window_name to item 2 of argv
set flip_count to index of window window_name
repeat (flip_count - 1) times
activate
tell application "System Events" to keystroke "`" using command down
end repeat
end if
-- Interact with the dialog using System Events (thanks mcgrailm)
tell front window
activate
tell application "System Events"
keystroke "g" using {shift down, command down}
keystroke file_name
delay 1
keystroke return
delay 1
keystroke return
end tell
end tell
end tell
return 0
運行結束
0
我剛剛發現的另一個選項是指定的目錄使用命令行:
do shell script "defaults write com.apple.Safari NSNavLastRootDirectory /path/to/directory"
這樣你c在UI腳本中做得稍微少一些。在打開文件選擇器之前運行此命令,它會將您置於指定的目錄中。在這個目錄中包含你需要的所有文件,你可以編寫命令+ a來選擇它們,然後返回。
相關問題
- 1. 使用AppleScript在Xcode中選擇文件
- 2. applescript選擇文件標題
- 3. AppleScript選擇文件或文件夾
- 4. 在Safari中使用Applescript訪問Web Inspector
- 5. 的AppleScript - 幫助使用Safari
- 6. Applescript集合選擇到文件名稱
- 7. AppleScript iTunes:按位置選擇文件?
- 8. 如何使用AppleScript在iTunes中的子文件夾中選擇播放列表?
- 9. Applescript:同時使用「打開」和「選擇文件」
- 10. AppleScript的選擇
- 11. AppleScript中選擇文件的文件夾路徑
- 12. 無法在Safari中選擇文本
- 13. 在AppleScript中解析CSV文件並選擇列
- 14. 使用Applescript在Photoshop中打開文件
- 15. 在Finder中移動文件使用AppleScript
- 16. AppleScript-Photoshop:如何使用AppleScript選擇(如套索工具)
- 17. Applescript在photoshop中選擇頻道
- 18. 禁用iOS Safari中的選擇選項
- 19. 使用applescript關閉多個Safari窗口
- 20. zip文件夾使用applescript
- 21. 從Applescript的文件名列表中選擇一個項目
- 22. jQuery下拉選擇=在Safari中選擇不起作用
- 23. AppleScript:在iTunes中取消選擇當前選擇
- 24. 在AppleScript的「選擇文件」,只允許選擇的文件夾,以及如何獲得文本返回
- 25. AppleScript的 - 選用文件路徑
- 26. 如何在使用Applescript的郵件中選擇外部的下一條消息?
- 27. 如何獲得消息的列表,從選擇在郵件中使用AppleScript
- 28. AppleScript Safari,在CURRENT窗口中打開URL
- 29. 從文件中使用numpy選擇條件從文件中選擇列和行
- 30. safari中的文件輸入大小問題,用於多個文件選擇
您是否試圖以編程方式告訴Safari在文件選擇器打開後上傳特定文件,或讓Safari首先打開選擇器?前者爲 – Asmus 2011-03-02 16:27:43
。 Selenium點擊一個打開Safari文件選擇器的鏈接,然後用文件位置調用我的AppleScript,而且我們很好。至少我希望如此 - 即將嘗試。 ;) – 2011-03-02 18:42:08