Python, farklı GUI ve CLI tabanlı uygulamalar yazmak için kullanabileceğiniz çok yönlü bir programlama dilidir. Python'da yeniyseniz, öğrenmenizi pekiştirmenin mini projeler üzerinde çalışmaktan daha iyi bir yolu yoktur.

Yazılacak harika bir örnek Python projesi, ağ ana bilgisayarlarını denetleyen küçük bir yardımcı program olan bir ping süpürücüdür. Bu komut dosyası, print deyimleri, döngüler ve işlevler dahil olmak üzere temel programlama kavramlarını kapsayacaktır.

Ping Süpürücü Nedir?

Bir ping süpürücü, bir ağ adresini girdi olarak kabul eden, ağdaki ana bilgisayarlara ping atan ve ölü ve canlı ana bilgisayarların listesini çıkaran bir programdır. Ağınızdaki çevrimiçi ana bilgisayarların sayısını tahmin etmenin ve IPv4 adreslerini bulmanın kolay bir yoludur.

Yeni başlayan biri olarak, bir ping süpürücü oluşturmak, Python temellerinizi tazelemenin harika bir yoludur. Bu uygulamalı mini proje aynı zamanda ağ temelleri.

Ping Süpürücünüz İçin Ön Koşullar

Geliştirme sürecine başlamadan önce, sisteminizde Python'un en son sürümünün bulunduğundan emin olmalısınız.

instagram viewer

Komut istemine (Windows kullanıcıları için) veya terminale (UNIX/Linux sistemleri için) bu komutu yazıp, düğmesine basarak Python'u çalıştırıp çalıştıramayacağınızı kontrol edin. Girmek:

piton --versiyon

Bazı sistemlerde şunları çalıştırmanız gerekebilir:

python3 --sürüm

Bu komut, sisteminizde kurulu olan Python sürümünü döndürmelidir. "Python bulunamadı" gibi bir hata döndürürse, Python3'ü yükle ve ardından aşağıdaki adımlarla devam edin.

Ping Süpürücünün Kodlanması

Bu komut dosyasını oluşturmak için birden fazla yaklaşım vardır. Bazıları birkaç modül yüklemenizi ve içe aktarmanızı gerektirir. Burada, önemli olanlardan başka dış bağımlılıkları olmayan minimalist bir yaklaşım benimseyeceksiniz. işletim sistemi modülü.

Kodlamaya başlamadan önce, hangi işlevleri uygulamanız gerektiğini daha iyi anlamak için gereksinimleri belirleyin. Bu komut dosyasının üç bölümü vardır:

  1. Giriş IP adresini kabul edin.
  2. IP adresinden ağ kimliğini çıkarın.
  3. Ağdaki tüm ana bilgisayarlar üzerinde yineleme yapın ve bir ana bilgisayar ölü veya canlıysa yazdırın.

Artık iş akışının net bir resmine sahip olduğunuza göre, programlamaya başlayalım.

Girişi Kabul Etme ve İşleme

Komut dosyasının ilk bölümü, kullanıcıdan gelen girişi kabul etmek ve bu IPv4 adresini ilk üç sekizlisine indirgemekle ilgilidir. Bu bize ağ kimliğini verir:

içe aktarmak işletim sistemi

IP = input("[+] Ana Bilgisayar IP Adresini Girin:\t")
print("[+] Ping Sweeper'ı " + IP'de Başlatma)
nokta = IP.rfind(".")
IP = IP[0:nokta + 1]

bu giriş() işlev, kullanıcı girişini kabul eder. Bir dize kullanabilirsiniz bul() ondalık noktanın son oluşumunun dizinini çıkarma ve onu saklama yöntemi nokta değişken. Girdiden ondalık noktanın en sağdaki oluşumuna kadar her şeyi koruyarak takip edin.

Ana Bilgisayarları Tarama ve Ana Bilgisayar Durumunu Yazdırma

Ağ adresini giriş IP'sinden türetdiniz. Artık son IPv4 sekizlisi için tüm olası değerleri yineleyebilirsiniz: 1–254. for döngüsünün içinde, yeni IP'yi ev sahibi değişken. Bu IP, yineleyici değişkenin değeri tarafından takip edilen temel IP'dir. Ardından, işletim sistemi() çalıştırmak için yöntem ping atmak karşı komuta ev sahibi değişken.

için i içinde Aralık(1, 255):
ana bilgisayar = IP + str (i)
yanıt = os.system("ping -c 1 -w 1 " + ana bilgisayar + " >/dev/null")

eğer yanıt == 0:
yazdır (ana bilgisayar + " dır-dir yukarı")
başka:
yazdır (ana bilgisayar + " dır-dir aşağı")

test edin tepki ana bilgisayarın durumunu belirlemek ve çevrimiçi mi yoksa çevrimdışı mı olduğuna karar vermek için 0'a karşı değer. Ping, yanıt vermeyen bir ana bilgisayarla karşılaşırsa, sıfır olmayan bir değer döndürür. Aksi takdirde, ulaşabileceği bir ana bilgisayarı belirtmek için sıfır döndürür.

ekleyebilirsiniz c bayrak ve w 1 değerleriyle orijinal ping komutuna bayrak. Bu, yalnızca bir paket göndermesini ve yanıt alması için bir saniye beklemesini sağlar. Ping sürümünüz bu seçenekleri destekleyebilir veya desteklemeyebilir; kontrol etmek için ping man sayfasına bakın.

Ayrıca çıktıyı şuraya da yönlendirmelisiniz: /dev/null ping çıktısının ayrıntısını gizlemek için. Ping ve /dev/null sözdiziminin yalnızca Unix veya Linux sistemleriyle uyumlu olduğunu unutmayın. Değiştirerek bu komut dosyasını Windows'ta çalıştırabilirsiniz. c ile bayrak n ve >> dev/boş ile birlikte >boş.

Ping Sweeper Komut Dosyasını Çalıştırma

Bu betiği terminalde veya bir komut istemi aracılığıyla çalıştırabilirsiniz. Bir terminali ateşleyin, betiğin bulunduğu yere gidin ve onu python3 ile çalıştırın:

CD /directory/sweeper/
python3 süpürücü.py

Terminale bir IPv4 adresi veya alt ağ girin ve ping süpürücü çalışmaya başlamalı ve beklenen çıktıyı döndürmelidir.

Python için İlginç Proje Fikirleri

Uygulamalı öğrenme, bir programlama dilini öğrenmenin tartışmasız en iyi ve en hızlı yoludur. Ne kadar çok proje üzerinde çalışırsanız, kavramları o kadar çok kavrar, temel beceriler geliştirir ve sorunları nasıl çözeceğinizi anlarsınız.

Üzerinde çalışacak proje fikirleriniz yoksa, Python için en iyi proje fikirlerinin bu küratörlü listesine göz atın.