Справочник Программиста
6.37K subscribers
1.29K photos
376 videos
64 files
1.62K links
По рекламе - @it_start_programmer
Мои курсы - @courses_from_it_start_bot
Сайт - https://it-start.online/
YouTube - https://www.youtube.com/@it_start
Реклама на бирже - https://telega.in/c/programmersGuide_1

Предложить идею: @it_start_suggestion_bot
Download Telegram
This media is not supported in your browser
VIEW IN TELEGRAM
👀 Библиотека In_place в Python

Библиотека In_place предоставляет удобный способ для редактирования файлов "на месте" — т.е. без необходимости создавать временные файлы, а затем заменять оригинал.

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

Основные возможности библиотеки:
❄️Редактирование файлов "на месте" через временный файл.
❄️Чтение файла строка за строкой с одновременной записью изменений.
❄️Безопасная замена оригинального файла только после успешной обработки.
❄️Поддержка текстового и бинарного режимов работы.
❄️Простое добавление, удаление или модификация строк в файле.
❄️Обработка файлов любого размера без создания дополнительных копий в памяти.
❄️Автоматическое управление временными файлами и их удаление.
❄️Обработка исключений без повреждения оригинального файла.
❄️Кросс-платформенность для Windows, macOS и Linux.

➡️Установка библиотеки: pip install in-place

📱 Репозиторий

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤‍🔥3👍3
psudohash — это инструмент для создания хэшей на основе "криптографически псевдослучайных данных".

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

Основные возможности:
❄️Генерация хэшей: создаёт хэши с использованием алгоритмов, подходящих для задач, не требующих высокой криптографической устойчивости.
❄️Настраиваемая длина: возможность задавать длину выходного хэша.
❄️Простота использования: рассчитан на минимальную настройку, позволяя быстро интегрировать его в проекты.

📱 Репозиторий
📹 Видео-презентация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3👍2🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Код для добавления текстового водяного знака на видео на Python

Для работы с видео в коде используется библиотека moviepy, а для работы с изображением текста - Pillow и numpy.

➡️Установка библиотек: pip install moviepy Pillow numpy

from moviepy.editor import VideoFileClip, CompositeVideoClip, ImageClip
from PIL import Image, ImageDraw, ImageFont
import numpy as np


def add_watermark(input_video, output_video, watermark_text, font_size=24, position=("right", "bottom"), opacity=128):
# Загружаем видео
video = VideoFileClip(input_video)

# Создаём изображение с текстом водяного знака
font_path = "arial.ttf" # Указываем путь к файлу шрифта
font = ImageFont.truetype(font_path, font_size)

# Получаем размеры текста
text_bbox = font.getbbox(watermark_text)
text_width, text_height = text_bbox[2], text_bbox[3]

# Создаём прозрачное изображение для водяного знака
watermark_image = Image.new("RGBA", (text_width, text_height), (0, 0, 0, 0))
draw = ImageDraw.Draw(watermark_image)
draw.text((0, 0), watermark_text, font=font, fill=(255, 255, 255, opacity))

# Преобразуем Pillow-изображение в NumPy-массив
watermark_array = np.array(watermark_image)

# Конвертируем NumPy-массив в ImageClip
watermark_clip = ImageClip(watermark_array).set_duration(video.duration)

# Определяем позицию водяного знака
if position == ("right", "bottom"):
position = (video.size[0] - text_width - 10, video.size[1] - text_height - 10)
elif position == ("left", "top"):
position = (10, 10)
elif position == ("right", "top"):
position = (video.size[0] - text_width - 10, 10)
elif position == ("left", "bottom"):
position = (10, video.size[1] - text_height - 10)

watermark_clip = watermark_clip.set_position(position)

# Создаем итоговое видео
final_video = CompositeVideoClip([video, watermark_clip])
final_video.write_videofile(output_video, codec="libx264", audio_codec="aac")


# Пример использования
add_watermark(
input_video="input.mp4",
output_video="output_with_watermark.mp4",
watermark_text="My Watermark",
font_size=36,
position=("right", "bottom"),
opacity=200
)


➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥4👍4
This media is not supported in your browser
VIEW IN TELEGRAM
👀 Библиотека FastUI в Python

Библиотека FastUI предназначена для быстрого создания пользовательских интерфейсов (UI) с использованием Python-кода.

Создана на базе FastAPI и Pydantic, предоставляя разработчикам мощный и удобный инструмент для построения интерфейсов без необходимости глубокого изучения фронтенд-технологий.

Основные особенности библиотеки:
🔵Быстрое создание UI: Позволяет описывать интерфейс на Python с использованием декларативного подхода, что снижает порог входа для разработчиков.
🔵Интеграция с FastAPI: Отлично сочетается с FastAPI, предоставляя возможность интеграции UI с API в одном проекте.
🔵Использование Pydantic: Данные и валидация базируются на модели Pydantic, что гарантирует согласованность и удобство работы с типизированными данными.
🔵Интерактивный UI: Поддержка интерактивных элементов, таких как формы, таблицы и кнопки, позволяет быстро создавать пользовательские приложения.
🔵Масштабируемость: Подходит как для небольших проектов, так и для создания интерфейсов в крупных системах.

➡️Установка библиотеки: pip install fastui

📱 Репозиторий
💬 Демо

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥4🔥3
Voice-Pro — утилита с веб-интерфейсом на базе Gradio, предназначенная для обработки аудио. Разработана на языке Python и предоставляет широкий спектр функций для работы с голосом и текстом.

Основные возможности:
🔵Загрузка с YouTube: Позволяет скачивать видео с YouTube и извлекать из них аудио в форматах mp3, wav или flac.
🔵Удаление вокала: Использует технологии MDX-Net (UVR5) и Demucs для разделения вокала и инструментала в аудиофайлах.
🔵Распознавание речи (STT): Поддерживает преобразование речи в текст с использованием моделей Whisper, Faster-Whisper и Whisper-Timestamped.
🔵Переводчик: Интегрирован с Google Translate для перевода коротких текстов и субтитров на более чем 100 языков.
🔵Синтез речи (TTS): Предоставляет функции преобразования текста в речь с использованием Edge-TTS, а также моделей E2 и F5-TTS, поддерживающих клонирование голоса.
🔵Клонирование голоса: Обеспечивает возможность клонирования голоса для создания подкастов или других аудиоматериалов.
🔵Реальное время и пакетная обработка: Поддерживает как обработку в реальном времени, так и пакетную обработку большого количества файлов.

📱 Репозиторий

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍4❤‍🔥2🤨1
👀 Библиотека bcrypt в Python

Библиотека bcrypt используется для хэширования паролей с использованием алгоритма bcrypt, который является адаптивным и безопасным методом хранения паролей.

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

Основные особенности библиотеки:
🔵Хэширование паролей: Использует алгоритм bcrypt для создания хэшей паролей. Этот алгоритм использует соль для предотвращения атак с помощью радужных таблиц и делает хэширование более вычислительно сложным с каждым годом.
🔵Гибкость и настройка:
🟢Cost factor (или work factor) позволяет увеличивать вычислительную сложность хэширования, чтобы сделать его более защищённым от атак с использованием параллельных вычислений.
🟢Можно настроить количество итераций для хэширования, что позволяет адаптировать алгоритм под требования безопасности.
🔵Соль: Соль — это случайная строка, которая добавляется к паролю перед его хэшированием, обеспечивая уникальность каждого хэша, даже если два пользователя имеют одинаковые пароли.
🔵Безопасность: Позволяет безопасно хранить пароли, так как bcrypt не позволяет восстановить исходный пароль из его хэша. Для проверки пароля используется метод checkpw, который сравнивает введённый пароль с хэшем.

➡️Установка библиотеки: pip install bcrypt

📱 Репозиторий

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3❤‍🔥2🔥2🎉1
Email-archiver — это инструмент на Python для архивирования электронных писем из почтовых ящиков IMAP.

Прост в использовании и предназначен для сохранения писем в локальном хранилище.

Основные возможности:
🔵Подключение к почтовым ящикам через IMAP.
🔵Сохранение писем в локальное хранилище в формате .eml.
🔵Поддержка шифрования соединения через SSL/TLS.
🔵Фильтрация писем по дате, папке, отправителю и другим параметрам.
🔵Сохранение вложений из писем.
🔵Минимальные зависимости и простота настройки.
🔵Возможность указания параметров через конфигурационный файл или командную строку.
🔵Работа с популярными почтовыми сервисами (Gmail, Outlook, Yahoo и др.).

📱 Репозиторий

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍3🔥3❤‍🔥2🤨1
👀 Библиотека Aiocache в Python

Библиотека Aiocache — это асинхронная библиотека, которая предоставляет удобные средства для кэширования данных.

Поддерживает разные типы хранилищ, такие как Redis, Memcached, а также локальные кэши (например, in-memory).

Основные возможности:
🔵Поддержка различных бэкендов: Redis, Memcached, локальный кэш.
🔵Полная асинхронность, подходящая для работы с asyncio.
🔵Удобные декораторы для автоматического кэширования результатов функций.
🔵Настраиваемое время жизни (TTL) для кэшируемых данных.
🔵Поддержка сериализации данных (JSON, Pickle и другие).
🔵Простая настройка через конфигурацию.
🔵Методы для работы с кэшем: get, set, delete, exists, clear.
🔵Возможность использования пространств имен (namespaces) для организации ключей.
🔵Обработка ошибок и гибкость конфигурации.
🔵Интеграция с асинхронными веб-фреймворками, такими как FastAPI и AIOHTTP.

➡️Установка библиотеки: pip install aiocache

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥4❤‍🔥2
Formation Studio — это инструмент, разработанный для упрощения создания графических пользовательских интерфейсов (GUI) на Python с использованием библиотеки tkinter.

Предоставляет возможности drag-and-drop для разработки интерфейсов, позволяя сосредоточиться на функциональности продукта и дизайне, а не на ручном кодировании элементов интерфейса.

Основные особенности:
🔵Визуальный редактор интерфейсов: позволяет создавать GUI с помощью перетаскивания виджетов, что ускоряет процесс разработки и снижает вероятность ошибок.
🔵Генерация кода: автоматически генерирует код на Python для созданных интерфейсов, облегчая интеграцию с основной логикой приложения.
🔵Поддержка форматов XML и JSON: позволяет сохранять и загружать проекты в этих форматах, обеспечивая совместимость и удобство работы с проектами.
🔵Расширяемость: предоставляет возможности для добавления пользовательских виджетов и расширения функциональности редактора.

➡️Установка библиотеки: pip install formation-studio

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥5❤‍🔥2🤔1
👀 Библиотека setuptools в Python

Библиотека setuptools используется для упрощения создания, сборки, упаковки и распространения Python-пакетов.

Предоставляет удобные инструменты для управления зависимостями, сборки модулей, создания командных скриптов и публикации пакетов в репозиториях, таких как PyPI.

Основные возможности библиотеки:
🔵Упрощение создания и структурирования Python-пакетов.
🔵Управление зависимостями.
🔵Автоматизация сборки модулей и расширений.
🔵Создание консольных скриптов для запуска из командной строки.
🔵Публикация пакетов в репозиториях, включая PyPI.
🔵Поддержка загрузки плагинов и расширений.
🔵Генерация конфигурационных файлов, таких как setup.py и setup.cfg.
🔵Сборка C/C++-расширений для Python.

➡️Установка библиотеки: pip install setuptools

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥3❤‍🔥2👍1
This media is not supported in your browser
VIEW IN TELEGRAM
TikTokAutoUploader — это Python утилита предназначена для автоматической загрузки видео в TikTok. Разработана для удобной массовой загрузки контента.

Основные особенности:
🔵Автоматическое решение капч для беспрепятственного процесса загрузки.
🔵Возможность добавления популярных звуков TikTok к видео.
🔵Планирование загрузок до 10 дней вперед.
🔵Проверка видео на соответствие авторским правам перед публикацией.
🔵Добавление эффективных хэштегов для увеличения охвата.
🔵Ускорение процесса загрузки и упрощение взаимодействия.
🔵Поддержка работы с несколькими аккаунтами одновременно.

➡️Установка библиотеки: pip install tiktokautouploader

📱 Репозиторий

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥2👍2🎄1
👀 Библиотека Pint в Python

Библиотека Pint используется для работы с единицами измерения и их преобразования.

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

Основные возможности библиотеки:
🔵Определение и использование единиц измерения: Позволяет работать с предопределёнными единицами или добавлять свои собственные.
🔵Арифметические операции: Поддерживает сложение, вычитание, умножение, деление и возведение в степень величин с единицами измерения.
🔵Конвертация единиц: Легко конвертировать между совместимыми единицами, например, из метров в километры или из Цельсия в Фаренгейты.
🔵Совместимость: Поддерживает NumPy, что позволяет проводить операции с массивами физических величин.

➡️Установка библиотеки: pip install Pint

📱 Репозиторий
⚙️ Документация

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥5❤‍🔥2