Instalowanie Pyautogui
Przed użyciem funkcji Pyautogui moduł, musimy go zainstalować. Aby zainstalować ten moduł, uruchom następujące polecenie w terminalu.
$ pip instaluj pyautogui
LUB
$ PIP3 instaluj pyautoguiTeraz Pyautogui jest gotowy do użycia.
Uzyskanie rozdzielczości wyświetlacza
Przed automatyzacją działań myszy, dobrą praktyką jest znanie rozdzielczości wyświetlacza. Możemy uzyskać rozdzielczość wyświetlacza za pomocą .rozmiar() metoda
Pyautogui. Zobacz poniżej Uzyskanie rozdzielczości ekranu w postaci „szerokości x wysokość”:
Python 2.7.15+ (domyślnie, 7 października 2019, 17:39:04)Wpisz „Pomoc”, „Copyright”, „Kredyty” lub „Licencja”, aby uzyskać więcej informacji.
>>> Importuj PyautoguiOznacza to, że mamy 1366 pikseli w poziomym kierunku wyświetlacza i 768 pikseli w pionowym kierunku wyświetlacza.
Poruszanie myszy na wystawie
Znamy więc rozdzielczość naszego wyświetlacza. Teraz możemy przesunąć mysz w dowolnym miejscu na wyświetlaczu w granicach rozdzielczości wyświetlacza. Możemy przesunąć mysz za pomocą .Moveto () Metoda Pyautogui. Przykład poniżej pozycji poruszającej myszy do (100 100) w 2 sekundy
>>> Importuj PyautoguiPrzekazaliśmy trzy argumenty .Metoda moveto (). Pierwsze dwa argumenty są obowiązkowe i pokazują pozycję miejsca docelowego, ale trzeci argument nie jest obowiązkowy. Jeśli nie przekazamy trzeciego argumentu, mysz przenosi się do miejsca docelowego w krótkim czasie.
Kliknięcie, przewijanie i przeciąganie myszy
Pyautogui zapewnia pewne metody kontrolowania działań myszy. Możemy kliknąć, przewijać i przeciągnąć mysz za pomocą różnych metod.
Kliknięcie akcji myszy można wykonać za pomocą za pomocą .Metoda kliknięcia (). Przed kliknięciem przenieś mysz do wymaganego piksela, a następnie użyj .kliknij () metoda kliknięcia. Poniżej znajduje się przykład wykonania klikalności myszy. Poniższy przykład przesunie myszkę do (300,201) piksela i kliknij myszkę.
>>> Importuj PyautoguiMożesz dwukrotnie kliknąć mysz za pomocą .podwójne kliknięcie() metoda.
>>> Pyautogui.Moveto (300,201)Pyautogui zapewnia metodę .zwój() Aby przewinąć mysz w górę lub w dół. Ta metoda przyjmuje liczbę całkowitą jako argument, a następnie przewija w górę lub w dół w zależności od liczby całkowitej. Jeśli zdasz pozytywną liczbę całkowitą, przewija się w górę i do negatywnej liczby całkowitej przewijania w dół. Ile to będzie przewijać? To zależy od wartości liczby całkowitej.
>>> Importuj PyautoguiW powyższym przykładzie najpierw mysz przewinie 20 jednostek, a następnie przewijała w dół 20 jednostek.
Operację przeciągania myszy można również zastosować za pomocą za pomocą .przeciągnij do() Metoda modułu Pyautogui. Przeciąganie oznacza, poruszając myszką podczas nacisku jednego z przycisków myszy. Ta metoda przyjmuje trzy argumenty, pierwsze dwa argumenty wyświetlane współrzędne docelowego, a ostatni argument to czas trwania, co oznacza, ile czasu zajmie przejście do miejsca docelowego.
Aby zobaczyć operację przeciągania, otwórz farbę, zmaksymalizuj okno, wybierz ołówek i uruchom następujące polecenia do interaktywnej powłoki. Kod przesunie mysz do (138 229) pikseli w ciągu 2 sekund, a następnie przeciągnij mysz z obecnego piksela do wymaganego piksela również w 2 sekundy.
>>> Importuj PyautoguiPowyższy kod stworzy kwadratowy program malowania, przeciągając mysz.
Jak znaleźć współrzędne katalogu lub ikony pliku
Aby znaleźć współrzędne pliku lub katalogu, .pozycja() Zastosowana jest metoda. Ta metoda zwraca współrzędne, przy których obecna jest mysz. Postępuj zgodnie z podanymi krokami, aby znaleźć współrzędne
Obsługa przerwania i awarii
Piszesz skrypt do automatyzacji działań myszy i potrzebujesz krótkiej przerwy między każdym poleceniem. Jak sobie z tym poradzisz? Czy użyjesz .spać() metoda CZAS moduł po każdym poleceniu? Ale zwiększy to długość twojego kodu. Można to zrobić poprzez ustawienie Pyautogui.PAUZA zmienne do liczby sekund, które chcesz przerwać. To spowoduje pauzę po każdym poleceniu. Poniższy przykład zatrzymuje się 3 sekundy między każdym poleceniem.
>>> Importuj PyautoguiPython ma również Awaria funkcja. Aby włączyć tę funkcję, ustawiliśmy Pyautogui.Niepowodzenie na true. Jak to działa? Na przykład wyświetlacz ma rozdzielczość 1366 x 768. Jeśli przeniesiesz myszę do (1500,1500), program awansuje, podnosząc FaiSafeexception. Możesz poradzić sobie z tym wyjątkiem, używając Try i oprócz instrukcji lub wyłączając Pyautogui.Awaria. Wyłączając funkcję FailSafe, program nie podnosi tego wyjątku.
>>> Importuj PyautoguiW powyższym przykładzie przesunęliśmy myszę na pikseli (1500,1500), ale ekran ma (1366 768) pikseli. Program zignorował ten wyjątek.
Wysyłanie łańcucha z klawiatury
Pyautogui zapewnia funkcję przekazania łańcucha z klawiatury. Można to zrobić za pomocą .Metoda bledrite () tego modułu. Przed przekazaniem łańcucha z klawiatury skup się na oknie, w którym zamierzasz przekazać ciąg. Aby skupić się na wymaganym oknie, możemy użyć .Metoda kliknięcia ().
Użyliśmy półkolisu między dwoma poleceniami, ponieważ koncentruje się on na edytorze tekstu i przekazuje ciąg jeden za drugim. Teraz pytanie brzmi, w jaki sposób możemy przekazać klucze „alt” lub „przesuń”. Te klucze mogą być reprezentowane przez krótkie wartości ciągów. Niektóre wartości ciągów podano poniżej.
Wartości ciągów kluczyAby przejść jeden z powyższych kluczy, używamy tych wartości ciągów w formie listy. Poniższy przykład wyjaśni to. Kod przekazuje dwa razy „kapsel”. Po raz pierwszy w formie listy i drugi raz prosty ciąg. Przekazanie „Capslock” na liście naciska klawisz „Caps Lock”. A drugi „capslock” po prostu napisz „capslock” w kapitale, ponieważ klawisz „capslock” jest najpierw naciskany.
>>> Importuj PyautoguiNaciśnięte skróty
Skrót to połączenie kluczy do wykonywania niektórych zadań. Na przykład skrót „alt+f4” służy do zamykania bieżącego okna. Kombinację klawiszy można również przekazać z klawiatury za pomocą modułu Pyautogui. Aby nacisnąć „alt+f4”, najpierw naciskamy i przytrzymujemy klawisz „alt”, a następnie naciskamy klawisz „f4”. Po wydaniu klawisza „F4” wypuszczamy klucz „alt”. Tutaj użyjemy .keyup () I .KeyDown () Metody nacisku kombinacji klawiszy. Poniższy przykład pokazuje naciśnięcie i trzymanie klawisza „alt” oraz naciskanie i trzymanie klawisza „F4” razem.
Import PyautoguiNOTATKA: W powyższym przykładzie nie użyliśmy listy wartości ciągu „alt” i „f4”. Lista wartości ciągu jest przekazywana tylko do .maszyna do pisania () metoda.
Naciśnięcie i przytrzymanie klawisza „alt” jest bardzo skomplikowane, a następnie naciśnij klawisz „F4”, a po wydaniu klawisza „F4”, a następnie zwolnij klawisz „alt”. Można to zrobić po prostu za pomocą .Klawisz skrótu() metoda. Poniższy przykład wyczyści koncepcję.
Import PyautoguiPrzyjmowanie i analizowanie zrzutów ekranu
Możemy również zrobić zrzut ekranu za pomocą Pythona. Oferty modułu Pyautogui .zrzut ekranu() metoda robienia zrzutów ekranu bieżącego ekranu. Zrzut ekranu można wyświetlić za pomocą za pomocą .pokazywać() metoda. Uruchom następujące polecenie, aby zrobić zrzut ekranu i wyświetlić je.
>>> Importuj PyautoguiPo uruchomieniu powyższych poleceń, aby zrobić zrzut ekranu, zostanie zapisany w zmiennej „IMG”. Teraz możemy wywołać dalsze metody zmiennej „IMG”.
Możemy uzyskać krotność wartości RGB naszego wymaganego piksela za pomocą użycia .getPixel () Metoda zmiennej „IMG”. Argument przekazany .Metoda getPixel () to krotka zawierająca współrzędne x i y. Uruchom następujące polecenie do interaktywnej powłoki.
>>> img.getPixel ((2,3))Dalej możemy uzyskać rozmiar obrazu za pomocą następującego polecenia
>>> img.rozmiarMożemy sprawdzić, czy podane piksele ekranu pasują do danej wartości RGB, czy nie. Można to zrobić za pomocą .PixelMatchescolor () metoda. W sumie trzy argumenty są przekazywane do tej metody. Pierwsze dwa argumenty to współrzędne x i y, a trzeci argument to krotek wartości RGB. Ta metoda zwraca „prawdziwe”, jeśli kolor pasuje do piksela, w przeciwnym razie „Fałsz”. Tę metodę można zastosować w następujący sposób
>>> Pyautogui.PixelMatchescolor (2,3, (85,82,74))Widzieliśmy pewne podstawy, a teraz w poniższych sekcjach zobaczymy niektóre przypadki użycia automatyzacji GUI za pomocą modułu Pyautogui.
Automatycznie otwiera dla Ciebie różne pliki
Codziennie w swoim biurze musisz otworzyć wiele plików, aby ręcznie wprowadzić dane pracowników. To trochę nudne rzeczy do zrobienia. Najpierw przejdź do katalogu dokumentów, a następnie przejdź do innego katalogu i otwórz plik, a następnie wróć do katalogu dokumentów i dostaj kolejnego katalogu i rób to samo itp.
Można to zrobić po prostu, pisząc skrypt Python. To, co musisz zrobić, to uruchomić tylko skrypt, a skrypt otworzy wszystkie pliki.
Aby wykonać to zadanie, przede wszystkim musisz zlokalizować współrzędne następujących
Jak znaleźć współrzędne, zostało wyjaśnione wcześniej.
# Importowanie modułu PyautoguiW powyższym kodzie otwieramy tylko jeden plik. Podobnie możesz rozszerzyć kod, aby otworzyć wiele plików.
Patrząc na system
Jesteś w pracy i nie pracujesz nad systemem, ale twój system ma zainstalowaną aplikację, która może zgadywać, czy siedzisz bezczynnie, czy pracujesz nad systemem za pomocą ruchu myszy. Więc chcesz zautomatyzować myszkę do poruszania się po każdym krótkim czasie.
Można to zrobić, pisząc mały skrypt Python za pomocą Pyautogui moduł.
Import PyautoguiW powyższym kodzie przesuwamy mysz z jednego miejsca do drugiego po 5 sekundach. Możemy rzucić ten kod, naciskając „Ctrl+C”.
Na tym blogu omówiliśmy, w jaki sposób możesz użyć modułu Pyautogui do automatyzacji GUI systemu. Różne funkcje tego modułu zostały wyjaśnione i możesz zautomatyzować prawie wszystko, co można wykonać za pomocą klawiatury i myszy za pomocą tych funkcji.