Utwórz własne aplikacje „Przeglądarka internetowa” i „rejestrator komputerowy” za pomocą PyGoBject - Część 3
- 1718
- 272
- Maurycy Napierała
To jest 3 Część serii o tworzeniu aplikacji GUI pod pulpitem Linux za pomocą PyGobject. Dzisiaj porozmawiamy o korzystaniu z zaawansowanych modułów i bibliotek Python w naszych programach, takich jak 'OS','Webkit','upraszanie„I inni, oprócz innych przydatnych informacji do programowania.
Utwórz własną przeglądarkę i rejestrator - część 3Wymagania
Musisz przejść przez wszystkie poprzednie części serii stąd, aby kontynuować dalsze instrukcje dotyczące tworzenia większej liczby zaawansowanych aplikacji:
- Utwórz aplikacje GUI pod komputerem Linux za pomocą PyGOBject - Część 1
- Tworzenie zaawansowanych aplikacji Pygobject w Linux - Część 2
Moduły i biblioteki w Python są bardzo przydatne, zamiast pisać wiele podprogramów, aby wykonać skomplikowane zadania, które zajmie dużo czasu i pracy, możesz je po prostu zaimportować ! Tak, po prostu zaimportuj moduły i biblioteki, których potrzebujesz do swojego programu, a będziesz mógł zaoszczędzić dużo czasu i wysiłku, aby ukończyć swój program.
Istnieje wiele znanych modułów Pythona, które można znaleźć na indeksie modułu Python.
Możesz również importować biblioteki dla swojego programu Python, z „żołnierz amerykański.Repozytorium import GTK„Ta linia importuje bibliotekę GTK do programu Python, istnieje wiele innych bibliotek, takich jak GDK, Webkit… itp.
Tworzenie zaawansowanych aplikacji GUI
Dzisiaj stworzymy 2 programy:
- Prosta przeglądarka internetowa; które będą korzystać z biblioteki WebKit.
- Rejestrator komputerowy za pomocą polecenia „avconv”; który użyje modułu „OS” z Pythona.
Nie wyjaśnię, jak przeciągnąć i upuszczać widżety w Polana Projektant odtąd po prostu powiem ci nazwę widżetów, które musisz stworzyć, dodatkowo dam ci .polana plik dla każdego programu i plik Python na pewno.
Tworzenie prostej przeglądarki internetowej
Aby utworzyć przeglądarkę internetową, będziemy musieli użyć „Webkit„Silnik, który jest silnikiem renderującym open source dla Internetu, jest ten sam, który jest używany Chrom/Chrom, Aby uzyskać więcej informacji na ten temat, możesz zapoznać się z oficjalnym WebKit.Witryna ORG.
Najpierw będziemy musieli stworzyć GUI, otworzyć Polana Projektant i dodaj następujące widżety. Aby uzyskać więcej informacji na temat tworzenia widżetów, śledź Część 1 I Część 2 tej serii (linki podane powyżej).
- Utwórz widżet „Window1”.
- Utwórz widżet „Box1” i „Box2”.
- Utwórz widżet „Button1” i „Button2”.
- Utwórz widżet „Entry1”.
- Utwórz widżet „ScrolledWindow1”.
Po utworzeniu widżetów otrzymasz następujący interfejs.
Interfejs połowówNie ma nic nowego, oprócz „Przewidziane okno„Widżet; Ten widżet jest ważny, aby umożliwić Webkit silnik do wszczepienia w nim za pomocą „Przewidziane okno„Widget będziesz mógł również przewijać poziomo i pionowo podczas przeglądania stron internetowych.
Będziesz musiał dodać „backbutton_clicked„Przewoźnik do Z powrotem przycisk "kliknięte" sygnał, "Refreshbutton_clicked„Prowadzący do przycisku odświeżania”kliknął sygnał" I "enterkey_clicked„Prowadzący do„aktywowany„Sygnał do wejścia.
Kompletne .polana Plik dla interfejsu jest tutaj.
Fałsz nasze proste centrum przeglądarki 1000 600 aplikacje Internet Prawda Fałsz PigOdśwież prawdziwy prawdziwy prawdziwy POWRÓW PRAWDA PRAWDA True 1 Prawda Prawda Prawda 2 Fałsz PRAWDA PRAWDZIWE ZAWSZE W TRUDE 1 True 1
Teraz skopiuj powyższy kod i wklej go w „UI.polana”Plik w folderze domowym. Teraz utwórz nowy plik o nazwie „MyWebBrowser.py”I wprowadź następujący kod w nim, wszystkie wyjaśnienie jest w komentarzach.
#!/usr/bin/python #-*-kodowanie: UTF-8-*-##. z GI.Repozytorium Importuj GTK, WebKit Class Handler: Def BackButton_Clicked (Self, przycisk): ## Gdy użytkownik kliknie przycisk Wstecz, „.Metoda go_back () ', która automatycznie wyśle użytkownika na poprzedniej strony, ta metoda jest częścią silnika WebKit. posiadacz przeglądarki.go_back () def RefreshButton_Clicked (self, przycisk): ## To samo tutaj, ''.REAROOD () „Metoda jest aktywowana po kliknięciu przycisku„ Odśwież ”. posiadacz przeglądarki.REAROOD () def enterkey_clicked (self, przycisk): ## Aby automatycznie załadować adres URL, gdy klawisz „Enter” jest naciska z klawiatury podczas skupienia się na polu pozycji, musimy użyć ''.Metoda load_uri () i chwyć adres URL z pola wpisu. posiadacz przeglądarki.load_uri (Urlentry.get_text ()) ## nic nowego tutaj… Właśnie zaimportowaliśmy „interfejs użytkownika.plik Glade '. Builder = GTK.Builder () Builder.add_from_file („interfejs użytkownika.Glade ") Builder.connect_signals (handler ()) okno = budowniczy.get_Object („Window1”) ##.WebView () ', co jest domyślną rzeczą, jeśli chcesz dodać silnik WebKit do swojego programu. Browserholder = WebKit.WebView () ##, aby nie uwolnić edycji strony internetowej. posiadacz przeglądarki.set_editable (false) ## Domyślny adres URL do załadowania, użyliśmy metody „load_uri ()”. posiadacz przeglądarki.load_uri ("https: // tecmint.com ") urlentry = budowniczy.get_object („enter1”).set_text ("https: // tecMint.com ") ## tutaj zaimportowaliśmy obiekt ScrolledWindow1 z interfejsu użytkownika.plik dload. Scrolled_Window = Builder.get_object („scrolledWindow1”) ## użyliśmy ''.Dodaj () „Metoda dodania obiektu„ Przeglądacza ”do przewijanego okna, które zawiera naszą przeglądarkę WebKit. Scrolled_Window.Dodaj (posiadacz przeglądarki) ##, a na koniec pokazaliśmy obiekt „Przeglądacza” za pomocą '.Metoda show () '. posiadacz przeglądarki.show () ## Daj twórcy ciasteczka ! okno.Connect („Delete-Event”, GTK.main_quit) okno.show_all () gtk.główny()
Zapisz plik i uruchom go.
$ chmod 755 MyWebBrowser.Py $ ./MyWebBrowser.py
I to jest to, co dostaniesz.
Utwórz własną przeglądarkę internetowąMożesz odnosić się po Webkitgtk oficjalna dokumentacja, aby odkryć więcej opcji.
Tworzenie prostego rejestratora stacjonarnego
W tej sekcji dowiemy się, jak uruchamiać lokalne polecenia systemowe lub skorupy z pliku Python za pomocą 'OS„Moduł, który pomoże nam utworzyć prosty rejestrator ekranu dla komputerów stacjonarnych za pomocą”Avconv' Komenda.
Otwórz projektanta Glade i utwórz następujące widżety:
- Utwórz widżet „Window1”.
- Utwórz widżet „Box1”.
- Utwórz widżety „Button1”, „Button2” i „Button3”.
- Utwórz widżet „Entry1”.
Po utworzeniu powyżej wspomnianych widżetów znajdziesz poniżej interfejsu.
Interfejs GLODE UIOto komplet UI.polana plik.
Fałsz nasze proste centrum rejestratora 300 30 Aplikacje Multimedia Prawda Fałsz PRAWDA Prawda Fałsz Fałsz 0 Gtk-Media-Record Prawda Prawda Prawda Prawda Prawda 1 GTK-Media-Stop Prawda Prawda Prawda Prawda Prawdziwa prawdziwa prawdziwa prawdziwa
Jak zwykle skopiuj powyższy kod i wklej go w pliku „UI.polana„W swoim katalogu domowym stwórz nowe„MyRecorder.py”Zlikwiduj i wprowadź następujący kod w nim (każdy nowy wiersz jest wyjaśniony w komentarzach).
#!/usr/bin/python #-*-kodowanie: UTF-8-*-##. z GI.Repozytorium Importuj GTK Importuj obsługę klasy OS Class: def RecordButton (self, przycisk): ## Zdefiniowaliśmy zmienną: „FiPathandName”, przypisaliśmy zmienną lokalną BASH „$ home” do IT + "/" + Nazwa pliku z tekstu tekstu z tekstu pudełko wpisowe. FilePathandName = OS.Environ [„Home”] + "/" +.get_text () ## tutaj wyeksportował zmienną „filepathandName” z Pythona do zmiennej „nazwy pliku” w skorupce. OS.Environ [„FileName”] = FilePathandName ## za pomocą 'OS.System (polecenie) „Możemy wykonać dowolne polecenie powłoki lub skrypt powłoki, tutaj wykonaliśmy polecenie„ avconv ”, aby nagrywać wideo i audio stacjonarne. OS.System („avconv -f x11grab -r 25 -s 'xdpyinfo | grep' Dimensions: '| AWK' Print $ 2" -i: 0.0 -Vcodec libx264 -Threads 4 $ nazwa pliku -y & ") def stopbutton (self, przycisk): ## Uruchom polecenie„ Killall avconv ”po kliknięciu przycisku zatrzymania. OS.System („Killall avconv”) def PlayButton (self, przycisk): ## Uruchom polecenie „avplay” w powładzie, aby odtwarzać nagrany plik po kliknięciu przycisku odtwarzania. OS.System („avplay $ filename &”) ## nic nowego tutaj… właśnie zaimportowaliśmy interfejs użytkownika.plik Glade '. Builder = GTK.Builder () Builder.add_from_file („interfejs użytkownika.Glade ") Builder.connect_signals (handler ()) okno = budowniczy.get_Object („Window1”) Entry = Builder.Get_Object („Entry1”).set_text („plik MyRording.avi ") ## daj twórcy ciasteczka ! okno.Connect („Delete-Event”, GTK.main_quit) okno.show_all () gtk.główny()
Teraz uruchom plik, stosując następujące polecenia w terminalu.
$ chmod 755 MyRecorder.Py $ ./MyRecorder.py
I masz swój pierwszy rejestrator komputerów stacjonarnych.
Utwórz rejestrator komputerowyWięcej informacji o tym można znaleźćOS„Moduł w Python OS Library.
I to wszystko, tworzenie aplikacji na pulpit Linux nie jest trudny Pygobject, Musisz tylko utworzyć GUI, zaimportować niektóre moduły i połączyć plik Python z GUI, nic więcej, nic więcej. Istnieje wiele przydatnych samouczków na temat robienia tego na stronie internetowej Pygobject:
Czy próbowałeś tworzyć aplikacje za pomocą PyGobject? Co myślisz o tym? Jakie aplikacje opracowałeś wcześniej?
- « 11 polecenia „AVCONV” do nagrywania, konwersji i wyodrębnienia filmów i audios z terminali Linux
- Jak zainstalować i skonfigurować „Cache tylko serwer DNS” z „niezwiązanym” w RHEL/CENTOS 7 »