This media is not supported in your browser
VIEW IN TELEGRAM
Код для извлечения кадров из GIF на Python
Для извлечения кадров из GIF в коде используется библиотека
Атрибут
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для извлечения кадров из GIF в коде используется библиотека
Pillow
.Атрибут
n_frames
из библиотеки Pillow
представляет собой количество кадров в анимированном изображении.pip install Pillow
from PIL import Image
# Открытие GIF
gif = Image.open('input.gif')
# Извлечение и сохранение кадров
for frame in range(0, gif.n_frames):
gif.seek(frame)
gif.save(f'frame_{frame}.png')
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5👍4🔥2
Библиотека IconMatch в Python
Библиотека
Она помогает программам и разработчикам находить наиболее похожие изображения или иконки из заданного набора, основываясь на визуальных характеристиках.
Основные возможности библиотеки:
🔵 Позволяет анализировать изображения, извлекая ключевые характеристики, что помогает в сравнении и поиске схожих изображений.
🔵 Использует различные алгоритмы и методики, такие как гистограммы, дескрипторы или сравнение контуров, чтобы оценить степень сходства между изображениями.
🔵 Для повышения точности распознавания и классификации библиотека включает инструменты для предобработки изображений, такие как изменение размера, нормализация и фильтрация.
🔵 Оснащена удобным интерфейсом, что облегчает ее интеграцию в проекты и приложений, требующие функционала распознавания и
➡️ Установка библиотеки:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
IconMatch
предназначена для классификации и распознавания изображений и иконок.Она помогает программам и разработчикам находить наиболее похожие изображения или иконки из заданного набора, основываясь на визуальных характеристиках.
Основные возможности библиотеки:
pip install IconMatch
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Для обращения к API в коде используется библиотека
requests
.pip install
requests
import requests
def get_weather(city: str) -> None:
api_key = '79d1ca96933b0328e1c7e3e7a26cb347'
base_url = 'https://api.openweathermap.org/data/2.5/weather'
params = {
'q': city, # Название города
'units': 'metric', # Единицы измерения - метрические
'lang': 'ru', # Язык ответа
'appid': api_key # Ключ API
}
try:
# Выполняем GET-запрос с параметрами
response = requests.get(base_url, params=params)
# Проверяем успешность выполнения запроса
response.raise_for_status()
# Преобразуем ответ в формат JSON
weather_data = response.json()
# Получаем текущую температуру
temperature = weather_data['main']['temp']
# Получаем ощущаемую температуру
temperature_feels = weather_data['main']['feels_like']
# Получаем скорость ветра
wind_speed = weather_data['wind']['speed']
# Получаем описание облачности
cloud_cover = weather_data['weather'][0]['description']
# Получаем влажность
humidity = weather_data['main']['humidity']
# Выводим собранные данные о погоде
print(f'Температура воздуха: {temperature}°C\n'
f'Ощущается как: {temperature_feels}°C\n'
f'Ветер: {wind_speed} м/с\n'
f'Облачность: {cloud_cover}\n'
f'Влажность: {humidity}%')
# Обрабатываем исключения, связанные с запросом
except requests.RequestException as e:
print(f'Ошибка при запросе погоды: {e}')
# Обрабатываем случаи отсутствия данных в ответе
except KeyError:
print(f'Не удалось определить город: {city}')
if __name__ == "__main__":
city = input('Введите город, в котором хотите узнать погоду: ')
get_weather(city)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥14👍7❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Mako в Python
Библиотека
Часто применяется в веб-разработке для создания динамических веб-страниц.
Основные особенности библиотеки:
🔵 Синтаксис, основанный на Python: Использует синтаксис, который похож на Python, что делает его удобным для разработчиков, уже знакомых с языком.
🔵 Высокая производительность: Оптимизирован для высокой производительности, обеспечивая быструю генерацию шаблонов.
🔵 Гибкость: Позволяет легко вставлять любые данные в шаблоны и поддерживает богатый набор встроенных функций и фильтров.
🔵 Безопасность: Предоставляет механизмы для экранирования HTML, предотвращая атаки типа XSS (Cross-Site Scripting).
🔵 Расширяемость: Легко интегрируется с другими библиотеками и фреймворками, такими как
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Mako
предназначена для создания шаблонов. Она используется для генерации HTML, XML или любых других текстовых форматов, основываясь на данных, переданных в шаблон.Часто применяется в веб-разработке для создания динамических веб-страниц.
Основные особенности библиотеки:
Flask
, Pyramid и др.pip install Mako
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍4❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для получения информации о процессоре на Python
Для получения информации о процессоре в коде используется модуль
Функция
➡️ Установка модуля:
➡️ Справочник Программиста. Подписаться
Для получения информации о процессоре в коде используется модуль
psutil
.Функция
cpu_count()
из модуля psutil
используется для получения количества логических или физических процессоров в системе, а функция cpu_percent()
используется для измерения загрузки CPU в процентах.pip install
psutil
import psutil
print(f"Число ядер: {psutil.cpu_count(logical=True)}")
print(f"Загруженность процессора: {psutil.cpu_percent(interval=1)}%")
print(f"Загрузка по ядрам: {psutil.cpu_percent(interval=1, percpu=True)}%")
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥6🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Black в Python
Библиотека
Основные особенности библиотеки:
🔵 Автоматическое форматирование: Автоматически преобразует код в соответствии с заданными стандартами форматирования, не требуя вмешательства программиста.
🔵 Однозначность стиля: Благодаря строгим правилам форматирования, код, отформатированный с помощью
🔵 Непрерывная поддержка стандартов: Следует рекомендациям PEP 8.
🔵 Конфигурационные возможности: Возможность настроить некоторые аспекты поведения
🔵 Интеграция с инструментами CI/CD: Легко интегрируется в процессы CI/CD, что позволяет автоматически проверять и форматировать код при каждом коммите или перед релизом.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Black
позволяет автоматически форматировать код на Python.Основные особенности библиотеки:
Black
, имеет единый стиль в пределах проекта.Black
, такие как длина строки, использование одинарных или двойных кавычек и т.д., через специальный конфигурационный файл pyproject.toml.pip install black
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥4👍3😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Продолжая тему интересных API, нашёл The Cat API, который позволяет получать случайные изображения кошек. Надеюсь это кому-нибудь будет полезно.
Для обращения к API в коде используется библиотека
requests
, а для работы с изображениями - io
и Pillow
.pip install
requests pillow
import requests
from PIL import Image
from io import BytesIO
API = 'https://api.thecatapi.com/v1'
def get_random_cat_image():
# Выполняем GET-запрос к API
response = requests.get(f'{API}/images/search')
if response.status_code == 200: # Проверяем, успешен ли запрос
# Преобразуем ответ в формате JSON в словарь
data = response.json()
# Извлекаем URL изображения из данных
image_url = data[0]['url']
# Возвращаем URL изображения
return image_url
else: # Если запрос не успешен
# Выбрасываем исключение с сообщением об ошибке
raise Exception(f'Ошибка при получении данных от The Cat API: {response.status_code}')
def display_image(image_url):
# Выполняем GET-запрос для получения изображения
response = requests.get(image_url)
# Проверяем, успешен ли запрос
if response.status_code == 200:
# Извлекаем содержимое ответа (данные изображения)
img_data = response.content
# Открываем изображение из байтового потока
img = Image.open(BytesIO(img_data))
# Показываем изображение
img.show()
else: # Если запрос не успешен
# Выбрасываем исключение с сообщением об ошибке
raise Exception(f'Ошибка при получении изображения с {image_url}: {response.status_code}')
def main():
# Получаем URL случайного изображения кота
image_url = get_random_cat_image()
# Печатаем URL изображения
print(f'URL изображения кота: {image_url}')
# Отображаем изображение
display_image(image_url)
if __name__ == '__main__':
main()
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥11👍3🔥3😁1
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека isort в Python
Библиотека
Она помогает поддерживать порядок импортов в соответствии с определенным стилем или стандартом кодирования, что улучшает читаемость кода и его поддерживаемость.
Основные особенности библиотеки:
🔵 Автоматическая сортировка: Сканирует файлы Python и автоматически сортирует импорты в соответствии с заданными правилами или стилем.
🔵 Поддержка различных стилей: Поддерживает несколько стилей сортировки импортов, таких как стандартные стили PEP 8, Google, и другие.
🔵 Интеграция с редакторами и средами разработки: Интегрируется с популярными редакторами кода и средами разработки, такими как VS Code, PyCharm, Sublime Text и другими, что позволяет использовать автоматическую сортировку импортов без необходимости выполнять её вручную.
🔵 Конфигурируемость: Может быть настроена, указав различные параметры через конфигурационные файлы или аргументы командной строки.
🔵 Командная строка и API: Может быть использован как из командной строки для обработки файлов и директорий, так и как Python API для интеграции с другими инструментами и скриптами.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
isort
предназначена для автоматической сортировки импортов в файлах Python.Она помогает поддерживать порядок импортов в соответствии с определенным стилем или стандартом кодирования, что улучшает читаемость кода и его поддерживаемость.
Основные особенности библиотеки:
pip install isort
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍5🔥1
В данном shorts напишем код для записи архива в изображение на Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍3❤🔥2
Код для записи архива в изображение при помощи Python
Код для извлечения архива из изображения при помощи Python
📺 Подробное объяснение
➡️ Справочник Программиста. Подписаться
# Открываем файл 'image.jpg' в режиме добавления в бинарном формате (ab)
with open('image.jpg', 'ab') as f:
# Открываем файл 'important archive.zip' в режиме чтения в бинарном формате (rb)
with open('important archive.zip', 'rb') as s:
# Считываем всё содержимое файла архива
data = s.read()
# Записываем прочитанное содержимое в конец файла 'image.jpg'
f.write(data)
Код для извлечения архива из изображения при помощи Python
# Открываем файл 'image.jpg' в режиме чтения бинарных данных
with open('image.jpg', 'rb') as f:
# Считываем всё содержимое файла в переменную content
content = f.read()
# Ищем индекс начала последовательности байтов, соответствующих маркеру конца JPEG-файла (FFD9)
offset = content.index(bytes.fromhex('FFD9'))
# Устанавливаем указатель позиции чтения файла на два байта после найденного маркера FFD9
f.seek(offset + 2)
# Открываем новый файл 'newfile.zip' в режиме записи бинарных данных
with open('newfile.zip', 'wb') as s:
# Записываем в новый файл все оставшиеся байты после позиции указателя чтения
s.write(f.read())
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥3😁2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека context-menu в Python
Библиотека
Контекстное меню – это меню, которое появляется при взаимодействии пользователя с элементом интерфейса, обычно при нажатии правой кнопкой мыши.
Основные возможности библиотеки:
🔵 Создание контекстных меню: Позволяет добавлять пункты в контекстные меню для файлов, папок и рабочих столов.
🔵 Ассоциация команд: Позволяет связать команды или скрипты Python с выбранными пунктами меню.
🔵 Настройка параметров: Позволяет задавать параметры для пунктов меню, такие как имя, команда, которая будет выполнена при выборе пункта, и другие.
➡️ Установка библиотеки:
📱 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
context-menu
предназначена для создания и управления контекстными меню в приложениях.Контекстное меню – это меню, которое появляется при взаимодействии пользователя с элементом интерфейса, обычно при нажатии правой кнопкой мыши.
Основные возможности библиотеки:
pip install context_menu
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤🔥3👍3
Справочник Программиста
Поздравляю всех с наступлением лета! ⛱ В честь этого, я решил сделать скидку в размере 5️⃣ 0️⃣ 🔣 на все свои курсы аж до конца июня! Приобрести курсы можно у бота - @courses_from_it_start_bot Просто выбираете товар, перейдя по ссылке оплачиваете его, нажимаете…
До конца скидок осталось 4 дня!
This media is not supported in your browser
VIEW IN TELEGRAM
Код для генерации анекдотов на Python
Для обращения к API в коде используется библиотека
➡️ Установка библиотек:
➡️ Справочник Программиста. Подписаться
Для обращения к API в коде используется библиотека
requests
, а для перевода на русский - googletrans
.pip install
requests googletrans==3.1.0a0
import requests
from googletrans import Translator
def get_random_joke():
# Создаем экземпляр класса Translator
translator = Translator()
# URL для получения случайной шутки
url = "https://v2.jokeapi.dev/joke/Any"
# Отправляем GET-запрос к API
response = requests.get(url)
# Проверяем, успешно ли выполнен запрос
if response.status_code == 200:
# Если запрос успешен, преобразуем ответ в формат JSON
joke_data = response.json()
# Проверяем тип шутки: если шутка однострочная
if joke_data["type"] == "single":
# Переводим шутку на русский язык
joke = translator.translate(joke_data["joke"], dest='ru')
# Выводим переведенную шутку
print(joke.text)
# Если шутка двухчастная
elif joke_data["type"] == "twopart":
# Переводим начало шутки на русский язык
setup = translator.translate(joke_data["setup"], dest='ru')
# Переводим окончание шутки на русский язык
delivery = translator.translate(joke_data["delivery"], dest='ru')
# Выводим переведенное начало шутки
print(setup.text)
# Выводим переведенное окончание шутки
print(delivery.text)
else:
# Если запрос не удался, выводим сообщение об ошибке
print("Не удалось получить шутку, попробуйте позже.")
if __name__ == "__main__":
get_random_joke()
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍4❤🔥2
Модуль
DeepFace
предназначена для распознавания и анализа лиц.Позволяет распознавать лица, определять возраст, пол, расу и эмоции.
Основные возможности библиотеки:
pip install deepface
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥5❤🔥3
Для работы с Excel в коде используется библиотека
openpyxl
.Данный код можно расценивать как шаблон и дополнять столбцами, строками и т.д. Результат работы кода показан на скриншоте.
pip install openpyxl
import openpyxl
from openpyxl.worksheet.table import Table, TableStyleInfo
# Создаём новую книгу Excel и активный лист
wb = openpyxl.Workbook()
ws = wb.active
# Данные для таблицы (пример)
data = [
["Имя", "Возраст", "Город"],
["Анна", 24, "Новосибирск"],
["Иван", 30, "Нижнекамск"],
["Пётр", 28, "Екатеринбург"]
]
# Заполняем активный лист данными
for row in data:
ws.append(row)
# Изменяем ширину столбцов
ws.column_dimensions['B'].width = 20
ws.column_dimensions['C'].width = 20
# Определяем диапазон для таблицы (включая заголовок)
table_range = "A1:C4"
# Создаём объект таблицы
tab = Table(displayName="Table1", ref=table_range)
# Определяем стиль таблицы
style = TableStyleInfo(name="TableStyleMedium9", showFirstColumn=False,
showLastColumn=False, showRowStripes=True, showColumnStripes=True)
tab.tableStyleInfo = style
# Добавляем таблицу на лист
ws.add_table(tab)
# Сохраняем книгу
wb.save('new_table.xlsx')
Please open Telegram to view this post
VIEW IN TELEGRAM
👍9🔥4❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
geemap
позволяет взаимодействовать с картами и геоданными с помощью Google Earth Engine.Она облегчает создание интерактивных карт, работу с геопространственными данными и их визуализацию.
Основные возможности:
pip install geemap
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4👍3❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для изменения размеров GIF на Python
Для изменения размеров GIF в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
Для изменения размеров GIF в коде используется библиотека
Pillow
.pip install Pillow
from PIL import Image
# Открываем входной GIF-файл
gif = Image.open('input.gif')
# Создаем пустой список для кадров
frames = []
# Проходимся по всем кадрам GIF-файла
for frame in range(0, gif.n_frames):
# Переходим к текущему кадру
gif.seek(frame)
# Создаем копию текущего кадра
frame_image = gif.copy()
# Меняем размер кадра на 1280x720
frame_image = frame_image.resize((1280, 720))
# Добавляем измененный кадр в список frames
frames.append(frame_image)
# Сохраняем первый кадр как GIF-файл с измененными параметрами
frames[0].save('resized.gif', save_all=True, append_images=frames[1:], duration=gif.info['duration'], loop=0)
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤🔥3🤔1
Библиотека tldr в Python
Библиотека
Это удобный инструмент для быстрого получения информации о командах без необходимости просматривать детализированные и часто сложные для восприятия справочные страницы.
Основные особенности библиотеки:
🔵 Простота использования: Легко устанавливается и используется прямо из командной строки или как библиотека в Python.
🔵 Многообразие команд: Поддерживает команды для различных операционных систем, включая Linux, macOS, Windows и другие.
🔵 Локальное кэширование: Команды и их описания кэшируются локально для быстрого доступа, что также позволяет использовать библиотеку оффлайн.
➡️ Установка библиотеки:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
tldr
предоставляет возможность получать краткие описания команд Unix, Linux, Windows и других систем из проекта tldr-pages.Это удобный инструмент для быстрого получения информации о командах без необходимости просматривать детализированные и часто сложные для восприятия справочные страницы.
Основные особенности библиотеки:
pip install tldr
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Для удаления пароля из PDF-файла в коде используется библиотека pikepdf.
pip install pikepdf
import pikepdf
# Определяем имя входного зашифрованного PDF файла
input_pdf = 'encrypted.pdf'
# Определяем имя выходного PDF файла, который будет без защиты
output_pdf = 'unprotected.pdf'
# Устанавливаем пароль для расшифровки PDF файла
password = 'my_password'
# Открываем зашифрованный PDF файл с использованием указанного пароля
pdf = pikepdf.Pdf.open(input_pdf, password=password)
# Сохраняем расшифрованный PDF файл под новым именем
pdf.save(output_pdf)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13👍6❤🔥3😁3🤨3