No se puede borrar el historial en Safari con AppleScript en OS X El Capitan

He estado usando la secuencia de commands siguiente para borrar el historial de Safari de la testing de selenium en OS X Yosemite. Me actualicé a OS X El Capitán y ahora el script no funcionará.

Error devuelto: no se puede get el button "Borrar historial"

  • El almacenamiento del sistema no está representado correctamente en 'Acerca de esta Mac'
  • ¿Cómo puedo automatizar el cambio de calidad de varias fotos?
  • La window emergente de cnetworkingenciales sigue apareciendo después de la actualización de El Capitan
  • Los commands de script de Shell funcionan bien en Terminal pero no a través de AppleScript
  • Paragon NTFS para Mac 14 no ve el disco NTFS (OS X 10.11 El Capitan)
  • ¿Cómo archivar el correo en Outlook 2016 con un atajo?
  • tell application "Safari" to activate tell application "System Events" tell process "Safari" tell menu bar 1 tell menu bar item "History" tell menu 1 click menu item "Clear History…" end tell end tell end tell delay 1 -- optional click button "Clear History" end tell end tell 

  • Error embarazoso en Safari
  • Reenvío del puerto OS X El Capitan a Parallels VM utilizando pfctl
  • Chrome y Safari siguen colgando después de actualizar a macOS High Sierra
  • ¿Cómo aceptar automáticamente las notifications de cookies según lo dispuesto por la legislación de la UE?
  • No se puede crear una aplicación de fluido debido a "Certificado no válido"
  • Deshabilite el manejo automático de "ligaduras" en PDF / Vista previa en El Capitan
  • One Solution collect form web for “No se puede borrar el historial en Safari con AppleScript en OS X El Capitan”

    En OS X El Capitan, onclick en Borrar historial … en el menu Historial, hace que Clear History aparezca como un cuadro de dialog modal o como una hoja enfocada en una window, como se ilustra en las imágenes al final de esta respuesta, y el código AppleScript a continuación lo maneja en cualquier caso.

    El código se escribe con la suposition de que aparece como un cuadro de dialog y si no se procesa como un cuadro de dialog, entonces el controller de on error procesa como una hoja.

    Este código , directamente debajo, esencialmente replica lo que hizo su código en OS X Yosemite, aunque ajustado para su uso en OS X El Capitán, sin el command de delay que puede agregar si lo desea.


     tell application "Safari" to activate tell application "System Events" click menu item "Clear History…" of menu 1 of menu bar item "History" of menu bar 1 of process "Safari" try click button "Clear History" of front window of process "Safari" on error try click button "Clear History" of sheet 1 of window 1 of process "Safari" end try end try end tell 

    Para interactuar con la list en el button emergente Borrar, por la cantidad de historial que se debe borrar, el siguiente ejemplo de código lo aborda.

    Debido a que puede aparecer de dos forms diferentes, desafortunadamente requiere dos sets separados de código similar y ambas secciones de código que rodean la list "Borrar …" deben actualizarse manualmente y sincronizarse si / cuando se usa ese segmento de código .

    Nota: Hay 10 líneas de código comentadas, precedidas por -- , pertenecientes a la list "Borrar …", 5 líneas en cada agrupación de código . Puede cambiar el valor actual para una de las 4 opciones al quitar el click pop up button 1 of window 1 of process "Safari" y click pop up button 1 of sheet 1 of window 1 of process "Safari" líneas de código , la en cada sección, y luego solo 1 de las otras 4 a la vez, la similar en cada sección. Esto significa que solo se deben descomentar 4 líneas en total, 2 en cada sección, 1 para hacer clic en el button emergente y el otro para la cantidad de Historial que desea borrar. Los comentarios que he agregado, precedidos por -- # , dentro del código deberían ser autoexplicativos.

     tell application "Safari" activate end tell tell application "System Events" click menu item "Clear History…" of menu 1 of menu bar item "History" of menu bar 1 of process "Safari" try -- # -- # NOTE: Keep this block of commented out code in sync with the similar block below! -- # -- # If you want to change the value of the "Clear ..." list, then uncomment the line of code directly below this comment. -- # -- click pop up button 1 of window 1 of process "Safari" -- # -- # If you've uncommented the line of code directly above this comment, then uncomment only 1 of the 4 lines of code below. -- # -- click menu item "the last hour" of menu 1 of pop up button 1 of window 1 of process "Safari" -- click menu item "today" of menu 1 of pop up button 1 of window 1 of process "Safari" -- click menu item "today and yesterday" of menu 1 of pop up button 1 of window 1 of process "Safari" -- click menu item "all history" of menu 1 of pop up button 1 of window 1 of process "Safari" -- # click button "Clear History" of front window of process "Safari" on error try -- # -- # NOTE: Keep this block of commented out code in sync with the similar block above! -- # -- # If you want to change the value of the "Clear ..." list, then uncomment the line of code directly below this comment. -- # -- click pop up button 1 of sheet 1 of window 1 of process "Safari" -- # -- # If you've uncommented the line of code directly above this comment, then uncomment only 1 of the 4 lines of code below. -- # -- click menu item "the last hour" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari" -- click menu item "today" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari" -- click menu item "today and yesterday" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari" -- click menu item "all history" of menu 1 of pop up button 1 of sheet 1 of window 1 of process "Safari" -- # click button "Clear History" of sheet 1 of window 1 of process "Safari" end try end try end tell 

    Esto, como codificado, se ejecuta muy rápido, sin embargo, puede insert algunos commands de delay , cuando corresponda, si desea ver mejor lo que está sucediendo a medida que se borra el historial.


    En las imágenes siguientes, una con la flecha roja apunta hacia lo que se refieren las 10 líneas de código comentadas, precedidas por -- , perteneciente a la list "Borrar …". Para cambiar, por ejemplo, "la última hora" por uno de los otros valores , aquí es donde descomenta las líneas de código comentadas correspondientes.

    Como una hoja: enter image description here

    Como un cuadro de dialog:

    enter image description here

    Loving Apple Products like poisoning (iPhone, iPad, iMac, Macbook, iWatch).