Введение
В данной статье рассмотрим 5 полезных скриптов на Python.
Скрипт для автоматического резервного копирования файлов на Python
Для написания данного скрипта нам понадобится импортировать shutil и datetime (они входят в стандартную библиотеку Python).
import shutil
import datetime
Теперь создадим функцию backup_files(), в которой будет присутствовать два параметра, а именно:
- source — путь к исходной директории
- destination — путь к директории назначения (кода сохранить бэкап)
import shutil
import datetime
def backup_files(source, destination):
Внутри функции сначала будет генерироваться временная метка, используя текущую дату и время, после чего будет производиться копирование исходной директории в директорию назначения с временной меткой.
import shutil
import datetime
def backup_files(source, destination):
# Генерируем временную метку, используя текущую дату и время
timestamp = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
# Копируем исходную директорию в директорию назначения с временной меткой
shutil.copytree(source, f"{destination}/backup_{timestamp}")
Пример работы функции:
import shutil
import datetime
def backup_files(source, destination):
# Генерируем временную метку, используя текущую дату и время
timestamp = datetime.datetime.now().strftime("%Y%m%d%H%M%S")
# Копируем исходную директорию в директорию назначения с временной меткой
shutil.copytree(source, f"{destination}/backup_{timestamp}")
# Устанавливаем путь к исходной директории
source_dir = "important"
# Устанавливаем путь к директории назначения
destination_dir = "backup copy"
# Вызываем функцию backup_files() с указанными исходной и директориями назначения
backup_files(source_dir, destination_dir)
Скрипт для парсинга изображений из Google Images на Python
Перед написанием данного кода нам понадобится установить библиотеку icrawler. Для этого нужно перейти в терминал/командную строку, прописать pip install icrawler, нажать Enter и ждать установки. После инсталляции мы импортируем класс BingImageCrawler из icrawler.
from icrawler.builtin import BingImageCrawler
Теперь создадим функцию download_images(), параметры которой будут следующие:
- keyword — текст запроса, по которому необходимо парсить изображения
- num_images — количество изображений, которые необходимо спарсить
- directory — путь к папке, в которую будут сохранены изображения
from icrawler.builtin import BingImageCrawler
def download_images(keyword, num_images, directory):
Внутри функции сначала будет создаваться экземпляр класса BingImageCrawler с указанием пути до папки для сохранения изображений. Далее будет запускаться краулер для скачивания изображений по указанному ключевому слову и количеству изображений.
from icrawler.builtin import BingImageCrawler
def download_images(keyword, num_images, directory):
crawler = BingImageCrawler(storage={'root_dir': directory})
crawler.crawl(keyword=keyword, max_num=num_images)
Пример вызова функции:
from icrawler.builtin import BingImageCrawler
def download_images(keyword, num_images, directory):
crawler = BingImageCrawler(storage={'root_dir': directory})
crawler.crawl(keyword=keyword, max_num=num_images)
# Скачиваем 10 изображений по запросу "котики" и сохраняем их в папку "images"
download_images(keyword='котики', num_images=10, directory='images')
Скрипт «Конвертер валют» на Python
Перед написанием данного кода нам понадобится установить библиотеку requests. Для этого нужно перейти в терминал/командную строку, прописать pip install requests, нажать Enter и ждать установки. После инсталляции мы импортируем библиотеку requests.
import requests
Теперь создадим функцию convert_currency(), параметры которой будут следующие:
- amount — сумма, которую нужно конверировать
- from_currency — валюта, из которой необходимо конвертация
- to_currency — валюта, в которую необходимо конвертировать
import requests
def convert_currency(amount, from_currency, to_currency):
Внутри функции сначала будет формироваться URL для запроса к API, через которое мы сможем получить данные.
import requests
def convert_currency(amount, from_currency, to_currency):
url = f"https://api.exchangerate-api.com/v4/latest/{from_currency}"
Далее будет идти GET-запрос к API с сохранением ответа.
import requests
def convert_currency(amount, from_currency, to_currency):
url = f"https://api.exchangerate-api.com/v4/latest/{from_currency}"
response = requests.get(url)
Теперь спарсим ответ на GET-запрос в формате json и извлечём курсы обмена из json.
import requests
def convert_currency(amount, from_currency, to_currency):
url = f"https://api.exchangerate-api.com/v4/latest/{from_currency}"
response = requests.get(url)
data = response.json()
rates = data['rates']
Конвертируем сумму с использованием курса обмена и выведем результат.
import requests
def convert_currency(amount, from_currency, to_currency):
url = f"https://api.exchangerate-api.com/v4/latest/{from_currency}"
response = requests.get(url)
data = response.json()
rates = data['rates']
converted_amount = amount * rates[to_currency]
print(f"{amount} {from_currency} равно {converted_amount} {to_currency}")
Пример вызова функции:
import requests
def convert_currency(amount, from_currency, to_currency):
url = f"https://api.exchangerate-api.com/v4/latest/{from_currency}"
response = requests.get(url)
data = response.json()
rates = data['rates']
converted_amount = amount * rates[to_currency]
print(f"{amount} {from_currency} равно {converted_amount} {to_currency}")
convert_currency(100, 'USD', 'RUB')
Скрипт для преобразования видео в GIF на Python
Перед написанием данного кода нам понадобится установить библиотеку moviepy. Для этого нужно перейти в терминал/командную строку, прописать pip install moviepy, нажать Enter и ждать установки. После инсталляции мы импортируем класс VideoFileClip из moviepy.
from moviepy.editor import VideoFileClip
Теперь создадим функцию convert_video_to_gif(), параметры которой будут следующие:
- video_path — путь к видео
- gif_path — путь по которому необходимо сохранить GIF
from moviepy.editor import VideoFileClip
def convert_video_to_gif(video_path, gif_path):
Внутри функции сначала создадим объект класса VideoFileClip передав в него путь к видео.
from moviepy.editor import VideoFileClip
def convert_video_to_gif(video_path, gif_path):
video = VideoFileClip(video_path)
Далее произведём конвертацию видео в формат GIF, передав путь, по которому необходимо её сохранить и fps.
from moviepy.editor import VideoFileClip
def convert_video_to_gif(video_path, gif_path):
video = VideoFileClip(video_path)
video.write_gif(gif_path, fps=60)
Пример вызова функции:
from moviepy.editor import VideoFileClip
def convert_video_to_gif(video_path, gif_path):
video = VideoFileClip(video_path)
video.write_gif(gif_path, fps=60)
convert_video_to_gif("video.mp4", "output.gif")
Скрипт для распаковки zip-архива на Python
Напишем скрипт для распаковки zip-архивов. Для начал импортируем библиотеку zipfile (она входит в стандартную библиотеку Python).
import zipfile
Теперь создадим функцию unzip_file(), параметры которой будут следующие:
- zip_path — путь к zip-архиву
- extract_path — путь для извлечения файлов из архива
import zipfile
def unzip_file(zip_path, extract_path):
Внутри будет производиться открытие zip-архива в режиме для чтения при помощи контекстного менеджера, после чего будет производиться извлечение содержимого в указанную папку.
import zipfile
def unzip_file(zip_path, extract_path):
with zipfile.ZipFile(zip_path, 'r') as zip_ref:
zip_ref.extractall(extract_path)
Пример вызова функции:
import zipfile
def unzip_file(zip_path, extract_path):
with zipfile.ZipFile(zip_path, 'r') as zip_ref:
zip_ref.extractall(extract_path)
zip_path = 'example.zip'
extract_path = ''
unzip_file(zip_path, extract_path)
Заключение
В ходе статьи мы с Вами рассмотрели целых 5 полезных скриптов на Python. Надеюсь Вам понравилась статья, желаю удачи и успехов! 🙂
Мой Telegram канал
Мой YouTube канал
Мой курс по Python (50 видоуроков + дополнительные уроки)
Курс по созданию телеграм-ботов на Python с фреймворком Aiogram