Applescript click automation in Google Chrome browser

applescriptgoogle-chromegoogle-voice

Hello fellow programmers!

I would like to save some applescript code as an application, so that when I open the application it will go to Google Chrome and answer an incoming call in Google Voice.

I will have my gmail account already open in the chrome browser, so all that is needed is for the applescript application to tell google chrome to activate, then click in a particular area (where the button will appear) to accept the call.

How can I find out the coordinates of where I want the mouse to click? Because I am making a separate application to click elsewhere and end the call.

Can anyone tell me how I would code this in applescript? or is there an easier way?

The following code is similar to something I found, and it works, but i'm not sure where/if it is clicking…

tell application "Safari" to activate
tell application "System Events"
   tell process "Safari"
   click at {300, 100} -- {from left, from top}
   end tell
end tell

Thank you for your time,
-Sebastian

Best Answer

You can also click elements with JavaScript:

tell application "Google Chrome" to tell active tab of window 1
    execute javascript "document.getElementById('chrome-web-store-title').click()"
    --execute javascript "document.querySelectorAll('.tile-grid .most-visited')[3].click()"
end tell

Focusing an existing tab by URL:

tell application "Google Chrome"
    repeat with w in windows
        set i to 1
        repeat with t in tabs of w
            if URL of t starts with "https://mail.google" then
                set active tab index of w to i
                set index of w to 1
                return
            end if
            set i to i + 1
        end repeat
    end repeat
end tell