Skip to content
Коллекция из 25 потрясающих скриптов Python

Коллекция из 25 потрясающих скриптов Python

В этой статье собрана коллекция из 25 потрясающих скриптов Python:

1. Конвертировать JSON в CSV 

Этот код считывает данные из файла ‘input.json’, который содержит информацию в формате JSON. Затем он форматирует эти данные в формат CSV и записывает их в файл ‘output.csv’. Если происходит ошибка, выводится сообщение об ошибке.


2. Генератор паролей

Этот код генерирует случайный пароль длиной 16 символов. В переменной total содержатся все буквы (в верхнем и нижнем регистрах), цифры и знаки препинания. Затем с помощью функции random.sample выбираются случайные символы из total длиной 16, и они объединяются в строку password. Наконец, сгенерированный пароль выводится на экран.


3. Поиск строки в файлах

Этот код выполняет следующие действия:

  • Запрашивает у пользователя ввод текста и пути.
  • Определяет функцию getfiles, которая рекурсивно обходит все файлы и папки в заданном пути.
  • Изменяет текущую директорию на заданный путь с помощью os.chdir(path).
  • Получает список файлов и папок в текущей директории с помощью os.listdir().
  • Для каждого файла проверяет, содержит ли он искомый текст. Если да, выводит сообщение о нахождении текста и абсолютный путь к файлу.
  • Если текст не найден во всех файлах, выводит сообщение о том, что текст не был найден.

4. Получить все ссылки с заданной веб-страницы

Данный код выполняет парсинг HTML-кода веб-страницы и извлекает ссылки из тегов <a>. Полученные ссылки сохраняются в файл “myLinks.txt”.


5. Водяной знак на изображении

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


6. Собрать и загрузить все изображения с веб-страницы

Данный код использует библиотеки Selenium, requests и BeautifulSoup для автоматического скачивания изображений с веб-страницы. Он запрашивает у пользователя путь к драйверу Chrome и URL-адрес страницы. Затем, используя Selenium, он получает HTML-код страницы и извлекает ссылки на изображения. Код создает папку “output” для сохранения изображений, если ее не существует, и загружает каждое изображение в эту папку с уникальным именем. В конце выводится сообщение о завершении загрузки.


7. Уведомление о низком заряде батареи

Данный код использует библиотеку psutil для получения информации о заряде батареи компьютера. Если заряд батареи составляет 30% или менее и компьютер не подключен к источнику питания, код отправляет уведомление с помощью библиотеки pynotifier. Уведомление содержит заголовок “Battery Low” и описание, указывающее процент оставшегося заряда батареи. Уведомление отображается в течение 5 секунд.


8. Рассчитайте свой возраст

Данный код принимает ввод от пользователя, включающий имя и возраст. Затем он использует модули time и calendar для вычисления количества месяцев и дней, соответствующих указанному возрасту. Результат выводится на экран в формате “Возраст [имя] составляет [лет] лет или [месяцев] месяцев или [дней] дней”.


9. Папка организована для загрузки с различными категориями

Больше статей:   Работа с файлами CSV в Python

Данный код сортирует файлы в директории “E:\downloads” в соответствующие поддиректории в зависимости от их расширения. Каждая категория файлов имеет свой список расширений в словаре extensions. Если файл не относится ни к одной из категорий, он перемещается в поддиректорию “others”.


10. Массовая рассылка электронных писем из CSV-файла

Данный код отправляет электронные письма с заданным текстом и темой для адресов, указанных в файле “emails.csv”. Почтовые учетные данные (адрес электронной почты и пароль) читаются из файла “credentials.txt”. Код использует библиотеку smtplib для установки соединения с SMTP-сервером и отправки писем. Каждое письмо отправляется от имени отправителя (адрес электронной почты из файла credentials.txt) на адрес получателя из файла emails.csv.


11. Получить IP-адрес и имя хоста веб-сайта

Этот код позволяет получить IP-адрес и имя хоста для указанного веб-сайта. Пользователь будет запрошен ввести адрес веб-сайта (URL), и затем код использует функцию socket.gethostbyname() для получения IP-адреса и выводит его на экран. Если введенный адрес недействителен или не найден, будет выведено сообщение об ошибке.


12. Изменение размера изображения

Данный код выполняет операцию изменения размера изображений. Он позволяет пользователю указать путь к набору изображений и требуемый размер. Затем код обрабатывает каждое изображение в указанной директории, изменяет его размер в соответствии с заданными параметрами и сохраняет измененные изображения в новой директории “resize”. Прогресс выполнения операции изменения размера отображается с помощью индикатора прогресса tqdm. По завершении операции выводится сообщение о ее завершении.


13. Извлекатель пароля WiFi

Данный код позволяет получить и отобразить список сохраненных Wi-Fi профилей и соответствующие пароли в операционной системе Windows. Он использует команды netsh wlan для извлечения информации о профилях Wi-Fi. Сначала код получает список всех профилей, а затем для каждого профиля получает соответствующий пароль. Результаты выводятся на экран, где каждый профиль сопровождается своим паролем, если он доступен.


14. Скриншот веб-сайта

Данный код выполняет скриншот страницы, используя браузер Chrome и Selenium. Он принимает URL страницы в качестве аргумента командной строки и сохраняет скриншот в файл screenshot.png. Сначала код настраивает веб-драйвер Chrome и создает экземпляр драйвера. Затем он открывает указанный URL, определяет размер страницы и устанавливает размер окна браузера соответствующим образом. После этого он создает скриншот страницы и сохраняет его в файл. Если URL не указан в аргументах командной строки, выводится сообщение о правильном использовании скрипта.


15. Разделить файлы на части

Данный код выполняет разделение файла на несколько частей. Он принимает имя файла и индекс разделения в качестве аргументов командной строки. Код создает класс Split_Files, который инициализирует переменные, такие как имя файла, директория для сохранения разделенных файлов, число разделения и расширение файла. Затем код выполняет разделение данных файла на указанное число частей. Разделенные части сохраняются в отдельные файлы в указанной директории. Если расширение файла – .txt, данные сохраняются с разделителем пробела, в противном случае данные сохраняются без заголовков. Каждый разделенный файл получает имя в формате split_file<номер_файла>.<расширение>.


16. Зашифровать и расшифровывать тексты

Данный код выполняет шифрование и расшифровку текста с использованием алгоритма AES (Advanced Encryption Standard). Код принимает открытый текст в качестве аргумента командной строки. Затем генерируется ключ и вектор инициализации (IV), инициализируется объект AES в режиме CFB (Cipher Feedback), и производится шифрование текста. Зашифрованный шифротекст сохраняется в файл “encrypted.bin”. Затем код выполняет расшифровку зашифрованного шифротекста с использованием ключа и вектора инициализации. Расшифрованный текст выводится на экран.


17. Скриншот экрана через регулярные промежутки времени

Больше статей:   Классы в Python. Как в этом разобраться и зачем они нужны.

Данный код выполняет автоматическое создание скриншотов экрана с определенной частотой. Код использует модули os, argparse, pyautogui и time. Аргументы командной строки позволяют настроить путь для сохранения скриншотов, частоту создания скриншотов и единицу измерения временного интервала. Код создает директорию для сохранения скриншотов, если она не существует, а затем в бесконечном цикле создает скриншоты с использованием модуля pyautogui и сохраняет их в указанную директорию. Временной интервал между скриншотами определяется на основе указанной частоты и единицы измерения времени. Программа может быть прервана пользователем при помощи комбинации клавиш “Ctrl+C”.


18. Конвертер десятичной системы в двоичную

Данный код представляет собой простое меню для конвертации чисел между десятичной и двоичной системами счисления. Пользователю предлагается выбрать опцию: десятичное в двоичное или двоичное в десятичное. Затем в зависимости от выбранной опции происходит ввод соответствующего числа (десятичного или двоичного) и осуществляется преобразование. В случае выбора некорректной опции выводится сообщение об ошибке.


19. Простое Todo CLI-приложение

Данный код представляет собой простое CLI-приложение для управления списком задач. Он использует библиотеку Click для создания команд и подкоманд. Приложение позволяет добавлять задачи, выводить список задач и удалять задачи по их идентификаторам. Данные о задачах сохраняются в файле todo.txt. При запуске приложения, оно загружает данные из файла и хранит их в контексте. Затем пользователь может выбрать нужную команду (например, tasks для просмотра задач или add для добавления новой задачи) и взаимодействовать с приложением через командную строку. После выполнения операций над задачами, обновленные данные сохраняются в файле todo.txt.


20. Конвертер валют

Больше статей:   Загрузка телеграм бота на сервер. Подробные шаги загрузки файла *.py на бесплатный сервер PythonAnywhere

Этот код является примером CLI-приложения на языке программирования Python. CLI (Command Line Interface) означает интерфейс командной строки, который позволяет взаимодействовать с программой через команды, вводимые в командной строке.

В данном примере, приложение запрашивает у пользователя данные о конверсии валюты. Оно использует стороннюю библиотеку requests для выполнения HTTP-запроса к веб-сервису fixer.io, откуда получает информацию о курсах валют. Затем оно предлагает пользователю ввести сумму валюты, исходную валюту и целевую валюту для конверсии.

Приложение также содержит список доступных валют currencies, из которого пользователь может выбрать исходную и целевую валюты. Если пользователь вводит “SHOW”, то приложение выводит список доступных валют. Если пользователь вводит “Q”, то программа завершается.

Функция function1() выполняет фактическое преобразование валюты на основе введенных данных и печатает результат.


21. Создание простого секундомера

Данный код представляет собой реализацию простого секундомера на языке Python с использованием библиотеки Tkinter. При запуске код создает окно, в котором отображается метка с текущим временем или сообщением “Ready!”, и три кнопки: “Start”, “Stop” и “Reset”.

Нажатие кнопки “Start” запускает секундомер, который начинает отсчет времени, обновляя метку каждую секунду. Кнопка “Stop” останавливает отсчет, а кнопка “Reset” сбрасывает секундомер и возвращает метку в исходное состояние.

Код содержит несколько функций: “counter_label” для обновления метки с отображением времени, “Start” для запуска секундомера, “Stop” для остановки секундомера и “Reset” для сброса секундомера.


22. Код Python для создания zip-архива

В основной части кода осуществляется проверка, является ли указанный путь директорией или файлом. Если это директория, то получаются все файлы в ней и ее поддиректориях с помощью функции retrieve_file_paths, после чего происходит создание zip-архива для этой директории с помощью функции zip_dir. Если же указанный путь является файлом, то создается zip-архив только для этого файла с помощью функции zip_file. Если указанный путь не является ни файлом, ни директорией, выводится соответствующее сообщение об ошибке.


23. Поиск рейтинга IMDB

данный код позволяет веб-скрапить данные о фильмах с IMDb на основе списка фильмов, находящихся в указанной папке, и сохранять полученные данные в CSV-файле.


24. Веб-скрейпинг комментариев Youtube

данный код позволяет использовать Selenium для автоматизации веб-браузера, прокручивать страницу YouTube для загрузки комментариев, собирать данные об авторах комментариев и самих комментариях, а затем сохранять эти данные в CSV-файле.


25. Код для преобразования текста в речь с использованием gTTS

Данный код использует библиотеку gTTS (Google Text-to-Speech) для преобразования текста, содержащегося в файле “abc.txt”, в речь и сохранения её в аудиофайле “voice.mp3”.

Источником послужила данная статья: https://dev.to/harendra21/a-collection-of-25-awesome-python-scripts-mini-projects-3745#9-organized-download-folder-with-different-categories

Tags:

Leave a Reply

Your email address will not be published. Required fields are marked *