Справочник Программиста
6.37K subscribers
1.3K photos
377 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
👀 Библиотека Mitmproxy в Python

Библиотека Mitmproxy предназначена для анализа и модификации HTTP, HTTPS и WebSocket трафика.

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

Основные особенности библиотеки:
🔵Перехват HTTP и HTTPS запросов и ответов с возможностью их изменения на лету.
🔵Сохранение полных HTTP-сессий для последующего воспроизведения и анализа.
🔵Воспроизведение клиентской стороны HTTP-сессии.
🔵Воспроизведение HTTP-ответов от ранее записанного сервера.
🔵Режим обратного прокси для перенаправления трафика на указанный сервер.
🔵Режим прозрачного прокси на macOS и Linux.
🔵Скриптовые изменения HTTP-трафика с использованием Python.
🔵Генерация SSL/TLS сертификатов для перехвата на лету.

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

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

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

Для склейки нескольких видеороликов в коде используется библиотека movis.

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

import movis as mv

# Создаём композицию с размером 1920x1080 пикселей и продолжительностью 8 секунд
scene = mv.layer.Composition(size=(1920, 1080), duration=8.0)

# Добавляем первый видео слой из файла 'video1.mp4' в композицию, начало с 0 секунды
video1 = scene.add_layer(mv.layer.Video('video1.mp4'), offset=0.0)

# Добавление второй видео слой из файла 'video2.mp4' в композицию, начало с 4 секунд
video2 = scene.add_layer(mv.layer.Video('video2.mp4'), offset=4.0)

# Сохраняем итоговое видео
scene.write_video('multi_video_layer.mp4')


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

Библиотека Tabled предназначена для обнаружения и извлечения таблиц. Использует surya для поиска всех таблиц в формате PDF, определения строк/столбцов и форматирования ячеек в markdown, csv или html.

Основные особенности библиотеки:
🔵Работает с PDF, изображениями, документами Word и PowerPoint.
🔵Стабильная скорость работы без резких задержек
🔵Высокая надёжность и время безотказной работы

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

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

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

Библиотека gspread предназначена для работы с Google Sheets через API.

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

Основные особенности библиотеки:
🔵Открытие таблицы по названию, ключу или URL.
🔵Чтение, запись и форматирование диапазонов ячеек.
🔵Настройка доступа и управления правами.
🔵Группировка обновлений (пакетная обработка).

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍31
This media is not supported in your browser
VIEW IN TELEGRAM
Sketch — это утилита для генерации Python-кода с использованием моделей машинного обучения.

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

Основные возможности:
🔵Генерация кода по описанию: Пользователь вводит текстовое описание задачи, и утилита генерирует соответствующий Python-код.
🔵Поддержка различных задач: Подходит для генерации кода, связанного с анализом данных, визуализацией, машинным обучением и другими популярными областями.
🔵Интерактивный интерфейс: Работает в режиме CLI (Command Line Interface), обеспечивая удобное взаимодействие с пользователем.

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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥32❤‍🔥1
This media is not supported in your browser
VIEW IN TELEGRAM
ingestr — это инструмент командной строки, предназначенный для передачи данных между различными источниками и целевыми системами без необходимости писать код.

Основные возможности:
🔵Передача данных между различными базами данных и аналитическими платформами.
🔵Миграция данных из устаревших систем в современные хранилища.
🔵Резервное копирование данных для обеспечения их безопасности.
🔵Синхронизация данных между рабочими базами и аналитическими системами.
🔵Пакетная и инкрементальная загрузка данных.
🔵Клонирование баз данных для тестирования и разработки.
🔵Поддержка реального времени для приложений, требующих мгновенных обновлений.
🔵Легкость автоматизации с использованием планировщиков задач и CI/CD систем.

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

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

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

Библиотека AnyIO упрощает работу с асинхронным кодом в Python. Позволяет писать универсальные программы, которые могут работать с разными системами асинхронности, такими как asyncio или Trio.

Основные возможности библиотеки:
🔵Абстракция событийных циклов: Предоставляет единый интерфейс для работы с различными событийными циклами. Это упрощает миграцию между фреймворками и улучшает совместимость кода.
🔵Управление задачами: Поддержка создания, отмены и управления задачами (корутинами). Предоставляет высокоуровневые API для работы с задачами, которые унифицированы для всех поддерживаемых фреймворков.
🔵Асинхронные примитивы синхронизации: Предоставляются инструменты для синхронизации, такие как семафоры, события, блокировки, которые работают независимо от фреймворка.
🔵Работа с сетью: Поддерживает работу с TCP, UDP, UNIX сокетами, а также имеет инструменты для создания и использования SSL-соединений.
🔵Асинхронные файловые операции: Чтение и запись файлов выполняются асинхронно, что может быть полезно для приложений с высокой нагрузкой на диск.
🔵Поддержка таймаутов и дедлайнов: Возможность задавать таймауты и дедлайны для задач и операций, что упрощает обработку длительных или застрявших операций.
🔵Поддержка WebSocket и потоков: Предоставляет удобные API для работы с WebSocket-соединениями, а также для управления потоками.

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

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

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

Для получения шаблона мема в коде используются библиотеки requests и random, а для работы с изображением - Pillow.

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

import requests
from PIL import Image, ImageDraw, ImageFont
import random


# Получаем случайный шаблон мемов
def get_random_meme_template():
url = "https://api.imgflip.com/get_memes"
response = requests.get(url).json()
memes = response['data']['memes']
meme = random.choice(memes)
return meme['url']


# Создаём мем
def create_meme(image_url, text):
img = Image.open(requests.get(image_url, stream=True).raw)
draw = ImageDraw.Draw(img)

# Задаём параметры шрифта
font = ImageFont.truetype("arial.ttf", 40)

# Получаем размеры текста
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]

# Смещаем текст выше от нижнего края
padding = 50 # Отступ от нижнего края
position = ((img.width - text_width) / 2, img.height - text_height - padding)

# Рисуем текст на изображении
draw.text(position, text, font=font, fill="white", stroke_fill="black", stroke_width=2)
img.save("meme.png")
print("Мем создан и сохранен как meme.png.")


meme_url = get_random_meme_template()
text = input("Введите текст для мема: ")
create_meme(meme_url, text)


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

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

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

Основные возможности библиотеки:
🔵Графика:
🟢Работа с 2D- и 3D-графикой.
🟢Поддержка OpenGL для отрисовки.
🟢Работа с текстурами и шейдерами.
🟢Возможность загрузки и отображения изображений в различных форматах (PNG, JPEG и др.).
🔵Звук:
🟢Поддержка воспроизведения аудио в формате WAV, MP3, OGG и других.
🟢Обработка звуковых эффектов.
🔵Видео: Воспроизведение видеофайлов с поддержкой различных форматов.
🔵Работа с окнами:
🟢Создание окон с произвольными размерами и настройками.
🟢Обработка ввода от клавиатуры и мыши.
🔵События и анимация:
🟢Реализация системы событий для взаимодействия с пользователем.
🟢Лёгкая работа с анимациями.

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

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

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

Библиотека
TerminalTextEffects позволяет создавать анимированные текстовые эффекты прямо в терминале.

Работает как в виде самостоятельного приложения, так и в качестве библиотеки, которую можно интегрировать в Python-скрипты.

Основные возможности библиотеки:
🔵Поддержка 256 цветов и RGB-градиентов.
🔵Создание анимаций с использованием сложных траекторий и кривых Безье.
🔵Множество встроенных эффектов, таких как "Матрица", "Фейерверк", "Цветные волны" и другие.
🔵Гибкие настройки кадровой частоты и размеров "канваса" для отображения текста.
🔵Возможность использования библиотеки без сторонних зависимостей.

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

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

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

Для склейки создания слайд-шоу в коде используется библиотека movis.

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

import movis as mv

# Создание видеосцены размером 1920x1080 пикселей, продолжительностью 10 секунд.
scene = mv.layer.Composition(size=(1920, 1080), duration=10.0)

# Список путей к изображениям, которые будут добавлены в композицию.
images = ['image1.jpg', 'image2.jpg', 'image3.jpg']

# Цикл для перебора изображений и добавления их на видеосцену с определённым сдвигом по времени.
for i, img_path in enumerate(images):
# Добавление слоя изображения на композицию с временным сдвигом, зависящим от индекса.
image_layer = scene.add_layer(mv.layer.Image(img_path), offset=i * 3)

# Включение анимации прозрачности (opacity) для изображения, где прозрачность изменяется от 0 до 1 за 3 секунды.
image_layer.opacity.enable_motion().extend([0, 0.5], [0.0, 1.0])

# Запись композиции в видеофайл с именем 'slideshow.mp4'.
scene.write_video('slideshow.mp4')


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

Библиотека json-repair предназначена для автоматического исправления ошибок в JSON-документах.

Помогает работать с поврежденными или плохо отформатированными JSON-файлами, делая их пригодными для обработки стандартными средствами, такими как json из стандартной библиотеки Python.

Основные возможности библиотеки:
🔵Исправление синтаксических ошибок в JSON:
🟢Неправильные или отсутствующие кавычки.
🟢Забытые запятые между элементами.
🟢Ошибки в использовании скобок ({}, []).
🟢Неэкранированные символы.
🔵Поддержка больших JSON-документов.
🔵Быстрая работа благодаря эффективной реализации.

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

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

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

Библиотека Niquests представляет собой современное решение для выполнения HTTP-запросов. Создана как замена для популярной библиотеки requests.

Основные преимущества и особенности библиотеки:
🔵Поддержка новых протоколов: HTTP/2 и HTTP/3 (включая QUIC), DNS через HTTPS, TLS, QUIC, DNSSEC и другие механизмы повышения безопасности.
🔵Совместимость: Полностью синхронная и асинхронная работа. Интерфейс совместим с requests, что упрощает миграцию.
🔵Повышенная производительность: Значительно быстрее других библиотек (requests, httpx, aiohttp) в многозадачных сценариях благодаря оптимизации соединений и мультиплексированию.
🔵Безопасность: Использует системные сертификаты (OS Trust Store). Поддерживает проверки отзыва сертификатов (OCSP).
🔵Расширенные возможности настройки сетевых соединений: Настраиваемое разрешение DNS. Прокси-серверы (SOCKS4/5, HTTP/HTTPS).

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

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

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

Библиотека tkinter-tooltip предназначена для создания подсказок для виджетов в приложениях на tkinter.

Упрощает добавление подсказок, которые отображаются, когда пользователь наводит курсор мыши на определённый элемент интерфейса.

Основные особенности библиотеки:
🔵Простота использования: Предоставляет простые в использовании методы для добавления подсказок к виджетам, таким как кнопки, метки и другие элементы интерфейса.
🔵Настройки внешнего вида: Возможность настроить стиль подсказок, включая шрифт, цвет фона и текста, а также время появления подсказки.
🔵Автоматическое управление: Подсказка появляется и исчезает автоматически при наведении курсора на целевой виджет.

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

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

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