Я пытаюсь использовать applecript и javascript, чтобы установить все флажки на https://calendar.google.com/calendar/syncselect, чьи идентификаторы элементов заканчиваются соответствующим доменом.
Пример ElementID: "person@domain.com"
Это работает, когда вы знаете точный идентификатор и можете сначала его указать:
tell application "Safari"
open location "https://calendar.google.com/calendar/syncselect"
delay 3
do JavaScript "
document.getElementById('person@domain.com').click();
" in document 1
end tell
Это повторная попытка зацикливания:
to goToWebPage(theWebPage)
tell application "Safari"
activate
set URL of document 1 to theWebPage
end tell
end goToWebPage
to clickID(theId) --creates a function that we can use over and over again instead of writing this code over and over again
tell application "Safari" -- lets AppleScript know what program to controll
do JavaScript "document.getElementById('" & theId & "').click();" in document 1 -- performs JavaScript code that clicks on the element of a specific id
end tell -- tells Applescript you are done talking to Safari
end clickID -- lets AppleScript know we are done with the function
goToWebPage("https://calendar.google.com/calendar/syncselect")
clickID("person@domain.com")
на основе примера: http://www.cubemg.com/how-to-click-a-button-on-a-web-page-with-applescript/
В основном список синхронизируемых календарей изменится, поэтому я хотел бы создать массив / список всех идентификаторов флажков.Просмотрите их, если какой-либо из идентификаторов заканчивается на domain.com.щелкните по этому полю.