Справочник Программиста
Код для удаления метаданных изображения на Python Для удаления метаданных изображения в коде используется библиотека Pillow. ➡️ Установка библиотеки: pip install Pillow from PIL import Image # Функция для удаления метаданных из указанного изображения.…
This media is not supported in your browser
VIEW IN TELEGRAM
Недавно мы рассматривали код для удаления метаданных изображения, а теперь предлагаю рассмотреть код для их извлечения.
Для извлечения метаданных изображения в коде используется библиотека
Pillow
.pip install Pillow
from PIL import Image
from PIL.ExifTags import TAGS
# Указываем путь к изображению
image_name = "image.jpg"
# Считываем изображение
image = Image.open(image_name)
# Извлекаем основные метаданные
info_dict = {
"Имя файла": image_name,
"Размер изображения": image.size,
"Высота изображения": image.height,
"Ширина изображения": image.width,
"Формат изображения": image.format,
"Режим изображения": image.mode,
"Анимированное изображение": getattr(image, "is_animated", False),
"Количество кадров": getattr(image, "n_frames", 1)
}
for label, value in info_dict.items():
print(f"{label:25}: {value}")
# Извлекаем данные EXIF
exif_data = image.getexif()
# Перебираем все поля данных EXIF
for tag_id in exif_data:
# Получаем имена тегов вместо идентификатора
tag = TAGS.get(tag_id, tag_id)
data = exif_data.get(tag_id)
# Декодируем данные в строку
if isinstance(data, bytes):
data = data.decode()
print(f"{tag:25}: {data}")
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥6❤🔥2
Библиотека
Rich
предоставляет возможности для создания красивого и интерактивного текстового вывода в консоли для приложений на Python.Позволяет создавать структурированный текст с разными стилями форматирования, добавлять цвета, стили текста, таблицы, прогресс-бары, панели, анимации и многое другое.
Некоторые основные возможности библиотеки:
pip install rich
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤🔥4👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Фреймворк Starlette в Python
Разработан быть простым и масштабируемым, с акцентом на производительность и продуктивность разработчика. Построен на основе модуля
Возможности фреймворка:
🔵 Поддержка WebSocket.
🔵 Поддержка асинхронности.
🔵 Поддержка HTTP/2.
🔵 Маршрутизация и промежуточное ПО.
🔵 Рендеринг шаблонов.
🔵 Тестовый клиент, построенный на
🔵 Поддержка CORS, GZip, статических файлов, потоковых ответов.
🔵 Поддержка сессий и cookie.
🔵 Совместимость с асинхронными библиотеками
🔵 Поддержка тестирования.
🔵 Отличная производительность по результатам независимых тестов.
➡️ Установка библиотеки:
🖥 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Starlette
- это высокопроизводительный веб-фреймворк для создания асинхронных веб-приложений.Разработан быть простым и масштабируемым, с акцентом на производительность и продуктивность разработчика. Построен на основе модуля
asyncio
, что позволяет эффективно обрабатывать множество одновременных соединений.Возможности фреймворка:
httpx
.asyncio
и trio
.pip install starlette
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍4❤🔥2🤔1
Для получения информации о геолокации по IP-адресу в коде используется библиотека
requests
.pip install requests
import requests
def get_geo_info(ip_address):
# Формируем URL для запроса к API
url = f"http://ip-api.com/json/{ip_address}"
# Отправляем GET-запрос к API
response = requests.get(url)
# Сохраняем ответ в формате JSON
data = response.json()
return data
# Вызываем функцию get_geo_info() и указываем IP-адрес
geo_info = get_geo_info("8.8.8.8")
# Выводим информацию о геолокации
for key, value in geo_info.items():
print(key, ":", value)
# Вывод:
# status : success
# country : United States
# countryCode : US
# region : VA
# regionName : Virginia
# city : Ashburn
# zip : 20149
# lat : 39.03
# lon : -77.5
# timezone : America/New_York
# isp : Google LLC
# org : Google Public DNS
# as : AS15169 Google LLC
# query : 8.8.8.8
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍6❤🔥2
Функция round() в Python
В данной статье рассмотрим, как работает функция
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим, как работает функция
round()
в Python.Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍3🔥2🤨1
Модуль objgraph в Python
Модуль
Его основная цель - помочь разработчикам искать и устранять утечки памяти в программах Он позволяет выбрать объект в памяти, который не должен там находиться, и увидеть, какие ссылки на него сохраняют его в памяти.
➡️ Установка модуля:
Также для рисования красивых графиков необходимо установить Graphviz.
🖥 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Модуль
objgraph
помогает исследовать использование памяти в программе.Его основная цель - помочь разработчикам искать и устранять утечки памяти в программах Он позволяет выбрать объект в памяти, который не должен там находиться, и увидеть, какие ссылки на него сохраняют его в памяти.
pip install objgraph
Также для рисования красивых графиков необходимо установить Graphviz.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤🔥1
3 способа получить последний элемент строки в Python
В данной статье рассмотрим 3 способа для получения последнего элемента строки в Python.
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим 3 способа для получения последнего элемента строки в Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥2😎1
Библиотека
NAPALM
(Network Automation and Programmability Abstraction Layer with Multivendor support) предназначена для автоматизации и взаимодействия с сетевыми устройствами и операционными системами с помощью единого API.Поддерживает множество функций, таких как получение информации о состоянии устройств, настройка интерфейсов, маршрутизации и безопасности, а также выполнение различных операций на сетевых устройствах.
pip install napalm
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥8👍6🔥1
Код для изменения контраста изображения на Python
Для изменения контраста изображения в коде используется библиотека
➡️ Установка модуля:
➡️ Справочник Программиста. Подписаться
Для изменения контраста изображения в коде используется библиотека
Pillow
.pip install Pillow
from PIL import Image, ImageEnhance
# Открываем изображение
image = Image.open("image.jpg")
# Создаем объект класса ImageEnhance.Contrast
enhancer = ImageEnhance.Contrast(image)
# Увеличиваем контраст (значение больше 1) или уменьшаем контраст (значение меньше 1)
contrast_factor = 1.5 # Пример значения контраста
# Увеличиваем контраст изображения
enhanced_image = enhancer.enhance(contrast_factor)
# Сохраняем измененное изображение
enhanced_image.save("output.jpg")
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍4🔥2🤔1
Класс pathlib.PureWindowsPath в Python
Класс
Он является подклассом класса
➡️ Справочник Программиста. Подписаться
Класс
PureWindowsPath
из модуля pathlib
представляет собой чистый путь (без информации о текущем рабочем каталоге) к файлу или директории в операционной системе Windows.Он является подклассом класса
PurePath
, который представляет абстрактный путь без привязки к конкретной операционной системе.Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤🔥2
Библиотека
phonenumbers
предоставляет возможности для работы с телефонными номерами, включая их разбор, форматирование и проверку на валидность.from phonenumbers import is_valid_number, parse
# Парсинг номера телефона
parsed_number = parse("+12024561414", "US")
# Проверка валидности номера
if is_valid_number(parsed_number):
print("Номер телефона валиден.")
else:
print("Номер телефона не валиден.")
import phonenumbers
from phonenumbers import geocoder, timezone
# Парсинг номера телефона
number = phonenumbers.parse("+12024561414")
# Получение информации о стране
country = geocoder.description_for_number(number, "us")
# Получение информации о часовом поясе
tz = timezone.time_zones_for_number(number)
print(f"Страна: {country}, Часовой пояс: {tz}")
pip install phonenumbers
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍5❤🔥2
Функция slice() в Python
В данной статье рассмотрим, как работает функция
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим, как работает функция
slice()
в Python.Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤🔥2🤔1🤨1
Код для конвертации JSON в CSV на Python
Для конвертации JSON в CSV в коде используются стандартные библиотеки
📝 Работа с json-файлами в Python
➡️ Справочник Программиста. Подписаться
Для конвертации JSON в CSV в коде используются стандартные библиотеки
json
и csv
.import json
import csv
# Открываем и загружаем JSON файл
with open('file.json', 'r') as json_file:
data = json.load(json_file)
# Открываем (или создаем) CSV файл для записи
with open('file.csv', 'w') as csv_file:
writer = csv.writer(csv_file)
# Записываем заголовки (ключи из JSON)
writer.writerow(data.keys())
# Записываем данные
writer.writerow(data.values())
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤🔥3😎1
Библиотека
textual
представляет собой инструмент для создания текстовых пользовательских интерфейсов (TUI).Предоставляет возможности для создания интерактивных консольных приложений с использованием текстовых элементов, таких как кнопки, поля ввода, таблицы и многое другое.
Некоторые особенности библиотеки:
SQLModel
.pip install textual
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍5❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для исправления орфографии в тексте на русском языке на Python
Для исправления орфографии в коде используется библиотека
➡️ Установка библиотеки:
Также необходимо установит словарь для русского языка:
Установка на Linux:
Установка на Windows производится вручную с GutHub (в видео показано какие файлы необходимо скачать и в какую папку перенести):
🖥 Скачать словарь для русского языка
➡️ Справочник Программиста. Подписаться
Для исправления орфографии в коде используется библиотека
pyenchant
.pip install pyenchant
Также необходимо установит словарь для русского языка:
Установка на Linux:
sudo apt-get install myspell-ru
Установка на Windows производится вручную с GutHub (в видео показано какие файлы необходимо скачать и в какую папку перенести):
import enchant
# Создаем словарь для русского языка
d = enchant.Dict("ru_RU")
text = "Это тексст с ошыбками"
corrected_text = []
for word in text.split():
# Если слово написано верно, то добавляем его в список
if d.check(word):
corrected_text.append(word)
# Если слово неправильное
else:
# Получаем предложения
suggestions = d.suggest(word)
# Если есть предложения
if suggestions:
# Выбираем первое предложение
corrected_text.append(suggestions[0])
# Если нет предложений
else:
# Оставляем слово как есть
corrected_text.append(word)
# объединяем слова обратно в текст
corrected_text = " ".join(corrected_text)
print(corrected_text)
# Вывод: Это текст с ошибками
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥10👍7🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Tqdm в Python
Библиотека
Полезна при обработке больших объемов данных или при выполнении длительных операций, когда необходимо отслеживать прогресс.
Основные возможности библиотеки:
🔵 Отображение прогресса выполнения итераций с помощью индикатора прогресса.
🔵 Возможность настройки внешнего вида индикатора прогресса, таких как ширина, символы и цвета.
🔵 Поддержка различных типов итерируемых объектов, включая списки, кортежи, словари и генераторы.
🔵 Возможность добавления оценки времени выполнения и оставшегося времени.
🔵 Поддержка вложенных индикаторов прогресса для сложных итераций.
➡️ Установка модуля:
🖥 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
Tqdm
позволяет создавать прогресс-бары во время выполнения итераций.Полезна при обработке больших объемов данных или при выполнении длительных операций, когда необходимо отслеживать прогресс.
Основные возможности библиотеки:
pip install tqdm
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍3❤🔥2
Библиотека
web3
предоставляет возможности для взаимодействия с Ethereum. Позволяет создавать приложения, взаимодействовать с контрактами, отправлять транзакции и получать информацию о блоках и транзакциях.Основные возможности библиотеки:
pip install web3
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5❤🔥2😎1
Код для конвертации видео из AVI в MP4 на Python
Для конвертации видео из AVI в MP4 в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для конвертации видео из AVI в MP4 в коде используется библиотека
moviepy
.pip install moviepy
from moviepy.editor import *
def avi_to_mp4(input_file, output_file):
try:
# Загружаем видео из файла AVI
video = VideoFileClip(input_file)
# Сохраняем видео в формате MP4
video.write_videofile(output_file, codec='libx264')
print("Конвертация завершена успешно!")
except Exception as e:
print(f"Произошла ошибка: {e}")
# Путь к файлу AVI и путь для сохранения конвертированного файла MP4
# Вызываем функцию для конвертации и передаём путь к файлу AVI и путь для сохранения конвертированного файла MP4
avi_to_mp4("video.avi", "output.mp4")
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤🔥4👍4