Automatyzacja kliknięć w Applecript w przeglądarce Google Chrome?

9

Witajcie inni programiści!

Chciałbym zapisać kod AppleScript jako aplikację, aby po otwarciu aplikacji przejdzie do Google Chrome i odbierze połączenie przychodzące w Google Voice.

Będę mieć moje konto Gmail już otwarte w przeglądarce Chrome, więc wszystko, czego potrzeba, to aby aplikacja AppleScript poinformowała Google Chrome o aktywacji, a następnie kliknij określony obszar (tam, gdzie pojawi się przycisk), aby zaakceptować połączenie.

Jak mogę znaleźć współrzędne miejsca, w którym klikam myszą? Ponieważ tworzę osobną aplikację, aby kliknąć gdzie indziej i zakończyć połączenie.

Czy ktoś może mi powiedzieć, jak bym to napisał w Applecript? czy jest łatwiejszy sposób?

Poniższy kod jest podobny do czegoś, co znalazłem i działa, ale nie jestem pewien, gdzie / jeśli kliknie ...

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

Dziękuję za poświęcony czas, -Sebastianie

seba1685
źródło

Odpowiedzi:

11

Możesz także klikać elementy za pomocą 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

Koncentrowanie istniejącej karty według adresu 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
Lri
źródło
2

Wygląda na to, że kliknie 300 pikseli w prawo i 100 pikseli w dół od lewego górnego rogu. (Nie jestem pewien, czy jest to lewy górny róg ekranu lub okna Safari ...) Możesz dowiedzieć się, gdzie to jest, naciskając Shift- Command- 4, a następnie przesuwając celownik, aż górna liczba to 300, a dolna liczba to 100. Naciskając, możesz pozbyć się krzyżyka escape. Następnie możesz ustalić, gdzie naprawdę chcesz, aby skrypt kliknął i zmienić liczby w skrypcie, aby pasowały.

daviewales
źródło
1
Dziękuję za ten skrót, daviewales! Jedyny problem polega na tym, że klikanie wydaje się działać tylko w ramach samego PRZEGLĄDARKI ... jak w, mogę kliknąć i otworzyć nową kartę, kliknąć plik, przycisk odświeżania, ale NIE dowolny przycisk na stronie. Jakieś rozwiązania?
seba1685
Właśnie go przetestowałem i stwierdziłem, że mogę zmusić go do klikania e-maili w Gmailu i przycisków na stronie głównej Google, ale nie mogłem zmusić go do kliknięcia żadnego z przycisków w oknie Google Talk.
daviewales
1

To proste, możesz to zrobić w pięciu krokach!

  1. otwórz edytor AppleScript

  2. Kliknij Record

  3. otwórz Findera i aktywuj Google Chrome

  4. kliknij Stoplub okrąg z sześciokątem przed nim

  5. naciśnij Cmd+, Sa pojawi się okno - zapisz skrypt jako aplikację i kliknij koło z napisem „start-up” obok niego

Epilog: uruchom ponownie komputer Mac i patrz, jak Chrome wygląda jak magia!

użytkownik109883
źródło