uz
Feedback
Справочник Программиста

Справочник Программиста

Kanalga Telegram’da o‘tish

По рекламе - @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

Ko'proq ko'rsatish
5 854
Obunachilar
Ma'lumot yo'q24 soatlar
-227 kunlar
-5830 kunlar
Postlar arxiv
Код для добавления текстового водяного знака на видео на 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
)
➡️Справочник Программиста. Подписаться

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

До конца скидок остался 1 день!

👀 Библиотека In_place в Python Библиотека In_place предоставляет удобный способ для редактирования файлов "на месте" — т.е. без необходимости создавать временные файлы, а затем заменять оригинал. Позволяет безопасно изменять содержимое файла, обрабатывая его строка за строкой. Библиотека может быть особенно полезной для задач, где требуется модифицировать текстовые файлы. Основные возможности библиотеки: ❄️Редактирование файлов "на месте" через временный файл. ❄️Чтение файла строка за строкой с одновременной записью изменений. ❄️Безопасная замена оригинального файла только после успешной обработки. ❄️Поддержка текстового и бинарного режимов работы. ❄️Простое добавление, удаление или модификация строк в файле. ❄️Обработка файлов любого размера без создания дополнительных копий в памяти. ❄️Автоматическое управление временными файлами и их удаление. ❄️Обработка исключений без повреждения оригинального файла. ❄️Кросс-платформенность для Windows, macOS и Linux. ➡️Установка библиотеки: pip install in-place 📱 Репозиторий ➡️Справочник Программиста. Подписаться

IT-аутстаффинг Ежедневно публикуем запросы на аутстаффинг разработчиков Java, Python, Flutter, C#, 1С и других ИТ-специалисто
IT-аутстаффинг Ежедневно публикуем запросы на аутстаффинг разработчиков Java, Python, Flutter, C#, 1С и других ИТ-специалистов. Есть свой резерв, готовый прямо сейчас влиться в ваш проект. Посмотрите в канале наших свободных разработчиков. Подписаться #реклама О рекламодателе

Код для создания изображений с подписями на Python Для создания изображения с подписью в коде используется библиотека Pillow. ➡️Установка библиотеки: pip install Pillow
from PIL import Image, ImageDraw, ImageFont


def create_image_with_text(text, output_path="output.png", text_size=36, position="center"):
    # Создаём новое изображение размером 800x400, цвет фона - тёмно-синий
    img = Image.new("RGB", (800, 400), color=(73, 109, 137))
    # Инициализируем объект для рисования
    draw = ImageDraw.Draw(img)

    # Загружаем шрифт Arial с указанным размером текста
    font = ImageFont.truetype("arial.ttf", size=text_size)

    # Вычисляем размер текста с помощью textbbox (границы текста в формате (x_min, y_min, x_max, y_max))
    text_bbox = draw.textbbox((0, 0), text, font=font)
    text_width = text_bbox[2] - text_bbox[0]  # Ширина текста
    text_height = text_bbox[3] - text_bbox[1]  # Высота текста

    # Устанавливаем координаты текста в зависимости от выбранного положения
    if position == "center":  # Центр изображения
        text_x = (img.width - text_width) // 2
        text_y = (img.height - text_height) // 2
    elif position == "top-left":  # Верхний левый угол
        text_x, text_y = 10, 10
    elif position == "top-right":  # Верхний правый угол
        text_x = img.width - text_width - 10
        text_y = 10
    elif position == "bottom-left":  # Нижний левый угол
        text_x = 10
        text_y = img.height - text_height - 10
    elif position == "bottom-right":  # Нижний правый угол
        text_x = img.width - text_width - 10
        text_y = img.height - text_height - 10
    else:
        # Если указано некорректное положение, выбрасываем исключение
        raise ValueError(
            "Недопустимое значение для position. Используйте: center, top-left, top-right, bottom-left, bottom-right."
        )

    # Добавляем текст на изображение по рассчитанным координатам
    draw.text((text_x, text_y), text, fill="white", font=font)
    # Сохраняем изображение в файл
    img.save(output_path)
    # Выводим сообщение о сохранении файла
    print(f"Изображение сохранено как {output_path}")


# Запрашиваем у пользователя текст для изображения
text = input("Введите текст для изображения: ")
# Запрашиваем у пользователя размер текста
text_size = int(input("Введите размер текста: "))
# Предлагаем выбрать расположение текста
print(
    "Выберите расположение текста: center, top-left, top-right, bottom-left, bottom-right"
)
# Получаем выбор пользователя
position = input("Введите расположение текста: ").strip()
# Вызываем функцию с указанными параметрами
create_image_with_text(text, text_size=text_size, position=position)
➡️Справочник Программиста. Подписаться

До конца скидок осталось 3 дня!

👀 Библиотека pynput в Python Библиотека pynput используется для управления клавиатурой и мышью, а также для отслеживания их ввода. Основные возможности библиотеки: ❄️Перехват нажатий и отпусканий клавиш. ❄️Симуляция нажатий клавиш и ввода текста. ❄️Перехват событий мыши (движение, клики, прокрутка). ❄️Симуляция кликов мыши, перемещения курсора и прокрутки. ❄️Поддержка работы с горячими клавишами. ❄️Кроссплатформенность (Windows, macOS, Linux). ➡️Установка библиотеки: pip install pynput 📱 Репозиторий ⚙️ Документация ➡️Справочник Программиста. Подписаться

Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск
Дарим подписку на Яндекс Музыку Ответьте на 1 вопрос и Яндекс Музыка для вас и 3-х ваших близких 30 дней бесплатно. Кинопоиск и Яндекс Книги тоже в подписке. Попробуйте сейчас❤️ Попробовать #реклама 18+ music.yandex.ru О рекламодателе Реклама на Яндексе

sudoku-in-python-packaging — это проект, который демонстрирует, как структурировать Python-проект для решения задачи создания
sudoku-in-python-packaging — это проект, который демонстрирует, как структурировать Python-проект для решения задачи создания и упаковки консольного приложения на примере игры «Судоку». Это учебный пример, который помогает лучшие понять практики Python-разработки и создания упаковки для распространения через PyPI. Каждая ячейка в сетке судоку представляет собой пакет sudoku_{x}_{y} (индексировано 0), а версия (1-9) - это значение в поле, поэтому вы можете написать pyproject.toml, и установленные пакеты будут решением. 📱 Репозиторий ➡️Справочник Программиста. Подписаться

Дарим кино, музыку и книги — на 30 дней всего за 1 ₽ В честь Нового года и Рождества с дарим доступ к Кинопоиску, Музыке и Кн
Дарим кино, музыку и книги — на 30 дней всего за 1 ₽ В честь Нового года и Рождества с дарим доступ к Кинопоиску, Музыке и Книгам на 30 дней всего за 1 ₽✨ Успейте посмотреть специальную новогоднюю подборку и воспользоваться всеми преимуществами подписки за 1 ₽ ❤️ Успейте забрать подарок до 9 января Узнать больше #реклама 18+ kinopoisk.ru О рекламодателе Реклама на Яндексе

👀 Библиотека Tenacity в Python Библиотека Tenacity предназначена для управления повторными попытками выполнения операций, ко
👀 Библиотека Tenacity в Python Библиотека Tenacity предназначена для управления повторными попытками выполнения операций, которые могут завершиться неудачно. Позволяет легко настроить логику повторов, интервалов между попытками, максимальное количество попыток и обработку ошибок. Основные возможности библиотеки: ❄️Повтор попыток при ошибках: Если функция вызывает исключение, Tenacity может автоматически выполнить её повторно. ❄️Настройка интервалов: Можно задавать фиксированные или изменяющиеся интервалы между попытками. ❄️Ограничение попыток: Настраивается максимальное количество попыток или общее время выполнения. ❄️Фильтрация исключений: Можно указать, какие именно исключения должны приводить к повторной попытке. ❄️Callbacks (обратные вызовы): Добавление пользовательских функций для логирования или другой обработки между попытками. ➡️Установка библиотеки: pip install tenacity 📱 Репозиторий ⚙️ Документация ➡️Справочник Программиста. Подписаться

Угадай, что в твоём новогоднем подарке? Потряси новогодний шар от Кинопоиска и узнай, что внутри! Попробовать #реклама 18+ ki
Угадай, что в твоём новогоднем подарке? Потряси новогодний шар от Кинопоиска и узнай, что внутри! Попробовать #реклама 18+ kinopoisk.ru О рекламодателе Реклама на Яндексе

Khoj — это инструмент, который превращает локальный компьютер в персонального помощника на основе ИИ. Интегрируется с популярными приложениями, такими как Obsidian, и позволяет мгновенно искать информацию в заметках, документах или личных базах данных. Разработан для локального использования, обеспечивая конфиденциальность и безопасность данных. Основные возможности: ❄️Локальная работа: Все данные остаются на вашем устройстве, что повышает уровень конфиденциальности. ❄️Интеграция с заметками: Особенно хорошо работает с приложением Obsidian, предоставляя возможность умного поиска и анализа ваших заметок. ❄️Натуральный язык: Поддержка запросов на естественном языке, что позволяет взаимодействовать с инструментом интуитивно. ❄️Расширяемость: Возможность подключения собственных баз знаний, документов и других ресурсов. ❄️OpenAI-интеграция: При наличии ключа API OpenAI, можно дополнительно использовать модели GPT для обработки запросов. ➡️Установка библиотеки: pip install khoj 📱 Репозиторий ⚙️ Документация ➡️Справочник Программиста. Подписаться

Сможете отличить факт от фикции в мире IT? Проверьте себя — ответьте на 5 вопросов и получите гайд «Топ-20 книг для развития
Сможете отличить факт от фикции в мире IT? Проверьте себя — ответьте на 5 вопросов и получите гайд «Топ-20 книг для развития гибких навыков», а также скидку 5% на обучение. Узнать больше #реклама 16+ mrqz.me О рекламодателе

С Новым Годом! 🎄☃️🎆

👀 Библиотека PyYAML в Python Библиотека PyYAML предназначена для работы с YAML (YAML Ain't Markup Language), удобным для чел
👀 Библиотека PyYAML в Python Библиотека PyYAML предназначена для работы с YAML (YAML Ain't Markup Language), удобным для человека форматом сериализации данных. YAML часто используется для конфигурационных файлов и в случаях, когда требуется передача данных между языками программирования, так как он более читаем по сравнению с другими форматами, такими как JSON и XML. Основные возможности библиотеки: ❄️Чтение YAML: позволяет загружать данные из файлов или строк в формате YAML и преобразовывать их в объекты Python (например, в словари и списки). ❄️Запись YAML: может сериализовать объекты Python обратно в формат YAML, позволяя сохранять данные в файлах или выводить их на экран. ❄️Поддержка сложных объектов: может обрабатывать сложные структуры данных, такие как вложенные списки и словари, а также пользовательские классы. ➡️Установка библиотеки: pip install PyYAML 📱 Репозиторий ⚙️ Документация ➡️Справочник Программиста. Подписаться

Новые бесплатные курсы в канале Selectel Newsfeed. Подойдут всем: от новичков до продвинутых айтишников. Вас ждут обзоры, инс
+5
Новые бесплатные курсы в канале Selectel Newsfeed. Подойдут всем: от новичков до продвинутых айтишников. Вас ждут обзоры, инструкции и статьи, которые помогут разобраться в темах структурно и последовательно. Вступайте в сообщество IT-специалистов в Telegram от Selectel. Подписаться #реклама 16+ О рекламодателе

Код анимированной консольной новогодней ёлки на Python Для стилизации в коде используется сторонняя библиотека colorama. ➡️Установка библиотеки: pip install colorama
import random
import time
from colorama import init, Fore

init(autoreset=True)  # Инициализация colorama


def draw_tree(height=10):
    try:
        while True:
            print("\033c", end="")  # Очистка консоли
            print("Новогодняя ёлка\n")
            for i in range(1, height + 1):
                level = " " * (height - i) + "*" * (2 * i - 1)
                decorated_level = "".join(
                    random.choice([
                        Fore.GREEN + "*",  # Зелёная звезда
                        Fore.RED + "o",    # Красный шарик
                        Fore.YELLOW + "x"  # Жёлтая гирлянда
                    ]) if char == "*" else char for char in level)
                print(decorated_level)
            print(" " * (height - 1) + Fore.MAGENTA + "|||")  # Ствол
            time.sleep(0.5)  # Пауза для анимации
    except KeyboardInterrupt:
        print("\nАнимация остановлена. С наступающим Новым годом!")


if __name__ == "__main__":
    draw_tree()
➡️Справочник Программиста. Подписаться