Python — это универсальный язык программирования, который можно использовать для написания различных типов приложений с графическим интерфейсом пользователя и командной строкой. Если вы новичок в Python, нет лучшего способа закрепить свои знания, чем работать над мини-проектами.

Отличным примером проекта Python для написания является программа проверки связи, небольшая утилита, которая проверяет сетевые хосты. Этот сценарий охватывает основные концепции программирования, включая операторы печати, циклы и функции.

Что такое Ping Sweeper?

Программа проверки связи — это программа, которая принимает сетевой адрес в качестве входных данных, пингует хосты в сети и выводит список мертвых и живых хостов. Это простой способ оценить количество онлайн-хостов в вашей сети и узнать их IPv4-адреса.

Если вы новичок, создание ping-чистильщика — отличный способ освежить в памяти основы Python. Этот практический мини-проект также освежит ваше понимание основы сети.

Предварительные требования для вашего Ping Sweeper

instagram viewer

Перед началом процесса разработки вы должны убедиться, что в вашей системе установлена ​​последняя версия Python.

Проверьте, можете ли вы запустить Python, введя эту команду в командной строке (для пользователей Windows) или в терминале (для систем UNIX/Linux) и нажав Войти:

питон --версия

В некоторых системах вам может потребоваться запустить:

python3 --версия

Эта команда должна вернуть версию Python, установленную в вашей системе. Если он возвращает ошибку, похожую на «python not found», вам следует установить Python3 а затем выполните следующие шаги.

Кодирование Ping Sweeper

Существует несколько подходов к созданию этого скрипта. Некоторые потребуют от вас установки и импорта нескольких модулей. Здесь вы примете минималистский подход, который не имеет внешних зависимостей, кроме критических ОС модуль.

Прежде чем приступить к написанию кода, разбейте требования, чтобы лучше понять, какие функции вам необходимо реализовать. Этот сценарий состоит из трех частей:

  1. Подтвердите введенный IP-адрес.
  2. Извлеките идентификатор сети из IP-адреса.
  3. Перебрать все хосты в сети и вывести, если хост мертв или жив.

Теперь, когда у вас есть четкое представление о рабочем процессе, давайте приступим к программированию.

Принятие и обработка ввода

Первая часть сценария связана с приемом ввода от пользователя и сокращением этого IPv4-адреса до первых трех октетов. Это дает нам идентификатор сети:

импорт Операционные системы

IP = input("[+] Введите IP-адрес хоста:\t")
print("[+] Запуск Ping Sweeper на " + IP)
точка = IP.rfind(".")
ИП = ИП[0: точка + 1]

вход() функция принимает пользовательский ввод. Вы можете использовать строку найти() метод для извлечения индекса последнего вхождения десятичной точки и сохранения его в точка переменная. Следуйте за ним, сохраняя все от ввода до самого правого вхождения десятичной точки.

Сканирование хостов и печать статуса хоста

Вы получили сетевой адрес из входного IP-адреса. Теперь вы можете перебрать все возможные значения для последнего октета IPv4: 1–254. Внутри цикла for сохраните новый IP-адрес в хозяин переменная. Этот IP-адрес является базовым IP-адресом, за которым следует значение переменной итератора. Затем используйте ОС.система() метод для запуска пинг команда против хозяин переменная.

за я в диапазон(1, 255):
хост = IP + ул (i)
ответ = os.system("ping -c 1 -w 1 " + хост + " >/dev/null")

если ответ == 0:
печать (хост + " является вверх")
еще:
печать (хост + " является вниз")

Протестируйте отклик значение против 0, чтобы определить статус хоста и решить, находится ли он в сети или в автономном режиме. Если ping встречает не отвечающий хост, он возвращает ненулевое значение. В противном случае он возвращает ноль, чтобы указать хост, с которым он может связаться.

Вы можете добавить с флаг и ж флаг со значениями 1 для исходной команды ping. Это заставляет его отправлять только один пакет и ждать одну секунду, чтобы получить ответ. Ваша версия ping может поддерживать или не поддерживать эти параметры; обратитесь к справочной странице ping, чтобы проверить.

Вы также должны перенаправить вывод на /dev/null чтобы скрыть детали вывода ping. Обратите внимание, что синтаксис ping и /dev/null совместим только с системами Unix или Linux. Вы можете запустить этот скрипт в Windows, заменив с флаг с н а также >/dev/ноль с >нуль.

Запуск скрипта Ping Sweeper

Вы можете запустить этот скрипт в терминале или через командную строку. Запустите терминал, перейдите к местоположению скрипта и выполните его с помощью python3:

CD /directory/sweeper/
python3 подметальная машина.py

Введите адрес IPv4 или подсеть в терминал, и программа проверки связи должна начать работу и вернуть ожидаемый результат.

Интересные идеи проектов для Python

Практическое обучение, возможно, является лучшим и самым быстрым способом изучения языка программирования. Чем больше проектов вы будете выполнять, тем больше вы будете понимать концепции, приобретать необходимые навыки и понимать, как решать проблемы.

Если у вас закончились идеи проектов для работы, ознакомьтесь с этим тщательно отобранным списком лучших идей проектов для Python.