CodeGym /Kurslar /Python SELF AZ /Skriptlərin işə salınması üçün pəncərə yaradılması

Skriptlərin işə salınması üçün pəncərə yaradılması

Python SELF AZ
Səviyyə , Dərs
Mövcuddur

1. Tətbiqlərdə çoxvəzifəliyin ideyası

Beləliklə, əziz avtomatlaşdırma ustası olmaq istəyənlər, gəlin Python kursumuza qayıdaq və bir az sevinc yaşayaq — artıq Tkinter ilə qrafik interfeysi olan tətbiqlər yaradırıq! Bu dərsdə tətbiqimizi daha güclü etmək haqqında öyrənəcəyik, ona başqa skriptləri istifadəçi interfeysindən birbaşa işə salma imkanı əlavə edəcəyik. Etiraf edək ki, avtomatlaşdırılmış vəzifələri bir kliklə işə salmaq bizi biraz az tənbəl edə bilər... və ya əksinə, bizi evdə pijama əsarətinə məhkum edə bilər. Amma gəlin baxaq, bunu necə edirik!

Çoxvəzifəliyin konsepsiyası

Scenario təsəvvür edin: sizin bir tətbiqiniz var ki, məlumatları avtomatik emal edə, veb-skreyping edə, hesabatlar yığa bilər. Amma hər dəfə öz əla skriptlərinizdən birini işə salmaq istəyəndə pəncərələr arasında keçid etməlisiniz. Bu, əvvəlki dövrlərdəki televizorlara bənzəyir, kanalı dəyişmək üçün məcburən ayağa qalxıb paneldəki düyməni basmağınıza bənzəyir... inkişaf bizə uzaqdan idarəni gətirdi, sizin Python GUI isə sizin üçün skriptləri işə salacaq!

Xarici skriptlərin icrasını anlamaq

Tkinter bizə interfeysi xarici skriptlərlə əlaqələndirməyə imkan verir ki, bu da həqiqətən faydalıdır. Bunu standart subprocess modulu vasitəsilə etmək mümkündür. Modul yeni prosesləri işə salmaq, komanda shell-də əmrlər icra etmək və hətta onlarla qarşılıqlı əlaqə qurmaq imkanı verir. Gəlin "avtomatlaşdırma idarəetmə mərkəzi"mizə ilk addımı ataq.

import subprocess
# Python skriptinin sadə işə salınması nümunəsi
subprocess.run(["python", "sizin_skriptiniz.py"])

2. Fayl seçimi və işə salma interfeysinin yaradılması

Skript seçimi interfeysi

Əvvəlcə istəyirik ki, istifadəçi işə salmaq istədiyi skript faylını seçə bilsin. Bunu etmək üçün ən rahat üsullardan biri tkinter.filedialog modulunda olan FileDialog widget-dır. Bu widget sizə standart fayl seçimi pəncərəsini açacaq və yaxşı bir ofisiant kimi sizin seçdiyiniz faylı təqdim edəcək.

import tkinter as tk
from tkinter import filedialog

root = tk.Tk()
root.withdraw()  # Əsas pəncərəni göstərmək istəmirik

file_path = filedialog.askopenfilename(title="Başlamaq üçün skripti seçin")
print(f"Seçilmiş fayl: {file_path}")

2.2 İşə salma düyməsinin yaradılması

İndi isə faylı seçəndən sonra onu işə salmaq imkanı verən bir düymə əlavə edəcəyik.

def launch_script():
    file_path = filedialog.askopenfilename(title="Başlamaq üçün skripti seçin")
    if file_path:
        subprocess.run(["python", file_path])

root = tk.Tk()
launch_button = tk.Button(root, text="Skripti işə sal", command=launch_script)
launch_button.pack(pady=20)

root.mainloop()

İndi bizim bir düyməmiz var ki, o fayl seçimi üçün dialoqu çağırır və fayl seçiləndən sonra onu ayrıca bir prosesdə işə salır. Fantastik!

3. Praktiki tətbiq

İdarəetmə interfeysinin yaradılması

Artıq bir skripti necə işə salacağımızı gördük. Gəlin, geribildirim və idarəetmə funksiyalarını əlavə edək ki, tətbiqimiz daha peşəkar görünsün.

import tkinter as tk
from tkinter import filedialog, messagebox
import subprocess

def launch_script():
    file_path = filedialog.askopenfilename(title="İşə salmaq üçün skripti seçin")
    if file_path:
        try:
            result = subprocess.run(["python", file_path], capture_output=True, text=True)
            messagebox.showinfo("İcra nəticəsi", f"Skript uğurla icra edildi!\n\n{result.stdout}")
        except subprocess.CalledProcessError as e:
            messagebox.showerror("İcra səhvi", f"Skriptin icrası zamanı səhv baş verdi:\n\n{e.stderr}")

root = tk.Tk()
launch_button = tk.Button(root, text="Skripti işə sal", command=launch_script)
launch_button.pack(pady=20)

root.mainloop()

Səhvlərin emalı

Biz ideal, səhvsiz bir dünyada yaşamırıq. Bunu yadda saxlayaraq səhvlərin emalını əlavə edirik ki, istifadəçimiz "anlaşıqsız" nasazlıqlara görə monitoru sındırmasın. Skripti icra etmək mümkün olmadıqda, səhv mesajını göstərmək üçün try-except istifadə edirik.

İcra nəticəsinin qaytarılması

Skriptin işə salınmasından əlavə, icra nəticəsini tuturuq və onu istifadəçiyə göstəririk, axı kodunun təriflənməsini kim istəməz? Əslində, bu, debugging və baş verənləri anlamaq üçün faydalıdır.

4. Bunu necə istifadə etmək olar?

GUI vasitəsilə avtomatlaşdırmanın ən möcüzəvi tərəfi onun ümumi istifadə üçün uyğun olmasıdır. İş prosesiniz daha idarəolunan və effektiv olur. Siz data təmizlənməsi, hesabatların yaradılması, hətta e-mail göndərilməsi funksiyalarını bir kliklə işə sala bilərsiniz. Biznes mühitində bu daha az rutin işlər və daha çox innovasiya deməkdir. Müsahibələr zamanı isə bu sizin trüf kartınız ola bilər, hansı ki əsl məhsuldarlığı və inteqrasiya bacarıqlarınızı göstərir.

Bonus: bizim interfeys yalnız Python deyil, eyni zamanda bash və batch-fayllar da daxil olmaqla, demək olar ki, hər hansı scriptləri işə sala bilər. Əsas odur ki, sistem bu scriptləri necə işə salacağını bilsin.

İndi bu nümunəni götürün, bir az xüsusi şərhlər əlavə edin və həmkarınız dəqiq düşünəcək ki, siz ondan nəsə gizlədirsiniz. Amma hələlik davam edin, ideal avtomatlaşdırıcı yaratmaq yolunda addımlayın!

Daha dərin öyrənmək üçün rəsmi Tkinter sənədlərinəsubprocess modulu sənədlərinə müraciət edə bilərsiniz, burada istifadə üçün daha maraqlı nümunələr və detalları tapmaq olar.

Şərhlər
TO VIEW ALL COMMENTS OR TO MAKE A COMMENT,
GO TO FULL VERSION