AppleScript Automation-将文件夹中的文件批量上载到单个上载表单

AppleScript Automation-将文件夹中的文件批量上载到单个上载表单,automation,applescript,Automation,Applescript,(第一次使用AppleScript…)我试图通过一个上传表单将文件从本地文件夹批量上传到服务器(ddos墙后面的传统服务器端软件,无法控制) 据我了解: 我可以遍历文件系统中的每个文件 对于每个文件:调用“告诉”Safari 调用javascript按ID“单击”按钮 文件上载对话框,选择要上载的文件(?) 我在实现时遇到了一些语法问题 (此外,如果这不是正确/最佳的方法,请在下面提供更好的方法!) 在逃 告诉应用程序“查找器” 将mlist设置为(文件夹“Macintosh HD:User

(第一次使用AppleScript…)我试图通过一个上传表单将文件从本地文件夹批量上传到服务器(ddos墙后面的传统服务器端软件,无法控制)

据我了解:

  • 我可以遍历文件系统中的每个文件
  • 对于每个文件:调用“告诉”Safari
  • 调用javascript按ID“单击”按钮
  • 文件上载对话框,选择要上载的文件(?)
我在实现时遇到了一些语法问题

(此外,如果这不是正确/最佳的方法,请在下面提供更好的方法!)

在逃 告诉应用程序“查找器” 将mlist设置为(文件夹“Macintosh HD:Users:username:filestouploadfolder”的每个文件)作为别名列表 在mlist中使用此_文件重复此操作 告诉应用程序“Safari” 激活 执行JavaScript“document.getElementById('selectToOpenFileDialog')。单击();“在文件1中 选择此文件 结束语 结束重复 结束语 返回0 终点
虽然它可能更优雅,但还是破解了一个解决方案

on run tell application "Finder" set mfolder to "Macintosh HD:Users:yosun:png:" set myFiles to name of every file of folder mfolder end tell repeat with aFile in myFiles tell application "Safari" activate delay 1 do JavaScript "document.getElementById('addDeviceTargetUserView').click();" in document 1 delay 1 do JavaScript "document.getElementById('targetDimension').value=10;" in document 1 do JavaScript "document.getElementById('targetImgFile').click();" in document 1 end tell tell application "System Events" keystroke "G" using {command down, shift down} delay 1 keystroke "~/png/" & aFile as string delay 1 keystroke return delay 1 keystroke return delay 1 end tell tell application "Safari" activate delay 1 do JavaScript "document.getElementById('AddDeviceTargetBtn').click();" in document 1 end tell delay 10 end repeat end run 在逃 告诉应用程序“查找器” 将mfolder设置为“Macintosh HD:Users:yosun:png:” 将myFiles设置为文件夹mfolder中每个文件的名称 结束语 对myFiles中的文件重复此操作 告诉应用程序“Safari” 激活 延迟1 执行JavaScript“document.getElementById('addDeviceTargetUserView')。单击();“在文件1中 延迟1 do JavaScript“document.getElementById('targetDimension')。值=10;“在文件1中 执行JavaScript“document.getElementById('targetImgFile')。单击();“在文件1中 结束语 告诉应用程序“系统事件” 使用{command down,shift down}键击“G” 延迟1 击键“~/png/”&文件为字符串 延迟1 击键返回 延迟1 击键返回 延迟1 结束语 告诉应用程序“Safari” 激活 延迟1 do JavaScript“document.getElementById('AddDeviceTargetBtn')。单击();“在文件1中 结束语 延迟10 结束重复 终点 on run tell application "Finder" set mfolder to "Macintosh HD:Users:yosun:png:" set myFiles to name of every file of folder mfolder end tell repeat with aFile in myFiles tell application "Safari" activate delay 1 do JavaScript "document.getElementById('addDeviceTargetUserView').click();" in document 1 delay 1 do JavaScript "document.getElementById('targetDimension').value=10;" in document 1 do JavaScript "document.getElementById('targetImgFile').click();" in document 1 end tell tell application "System Events" keystroke "G" using {command down, shift down} delay 1 keystroke "~/png/" & aFile as string delay 1 keystroke return delay 1 keystroke return delay 1 end tell tell application "Safari" activate delay 1 do JavaScript "document.getElementById('AddDeviceTargetBtn').click();" in document 1 end tell delay 10 end repeat end run