我正在使用带有safari版本10.1的macOS Sierra 10.12.4
我需要以编程方式在Safari的“开发”选项卡中启用“允许远程自动化”选项。
我可以运行以下命令来更改〜/ Library / Preferences中的com.apple.Safari.plist文件,并且可以完美地启用“开发”菜单。
`defaults write com.apple.Safari IncludeDevelopMenu -bool true`
但是我没有找到任何启用“允许远程自动化”的选项
知道哪个plist包含该信息?
答案 0 :(得分:1)
无法使用您描述的方法切换设置。
从Safari 11开始,您可以使用--enable命令行选项强制safaridriver进行身份验证。验证后,将设置此菜单项。这还将缓存您的其余登录会话的身份验证。随后调用safaridriver(例如,由Selenium库)将不需要进一步设置。
答案 1 :(得分:1)
如果无法修改plist,也可以使用AppleScript完成。为此,首先从Safari首选项启用开发,然后从“开发”菜单中选择“允许远程自动化”。 以下是我编写的AppleScript以启用允许远程自动化(这包括上述两个步骤)。
tell application "Safari" to activate
delay 2
tell application "System Events"
tell application process "Safari"
keystroke "," using command down
set frontmost to true
tell window 1
click button "Advanced" of toolbar 1
delay 2
set theCheckbox to checkbox 4 of group 1 of group 1 of it
tell theCheckbox
if not (its value as boolean) then click theCheckbox
end tell
delay 2
keystroke "w" using command down
delay 2
end tell
tell menu bar item "Develop" of menu bar 1
click
delay 2
click menu item "Allow Remote Automation" of menu 1
delay 2
end tell
end tell
end tell
tell application "Safari" to quit
注意:此处,只有在取消选中时,我才会从safari首选项中启用开发菜单。
希望这会有所帮助..