Справочник Программиста
6.38K subscribers
1.28K photos
373 videos
64 files
1.61K 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
🗑 jusText — это инструмент для удаления шаблонного текста, основанный на эвристике, который предназначен для очистки HTML-страниц от элементов, не являющихся основным контентом. К таким элементам относятся навигационные ссылки, заголовки и нижние колонтитулы.

Основные возможности:
🔵Удаление шаблонного текста: Эффективно удаляет нерелевантные элементы, такие как навигационные меню, верхние и нижние колонтитулы, с HTML-страниц.
🔵Сохранение полного контента: jusText фокусируется на сохранении полных предложений, обеспечивая целостность основного текстового содержимого.
🔵Создание лингвистических ресурсов: Он идеально подходит для формирования высококачественных веб-корпусов и других лингвистических данных.
🔵Использование через API и командную строку: Можно применять как через программный интерфейс, так и через терминал.
🔵Многоязычные адаптации: Алгоритм jusText адаптирован для различных языков программирования, включая C++, Go и Java.

➡️Установка: pip install justext

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥3👍1🍌1
🔥 Python Fire — это Python-библиотека, предназначенная для автоматической генерации интерфейсов командной строки (CLI) из любых объектов Python.

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

Основные возможности:
🔵Автоматическое создание интерфейсов командной строки из любых Python-объектов
🔵Поддержка функций, классов, модулей, списков, словарей и других структур данных
🔵Не требует написания дополнительного кода для парсинга аргументов
🔵Интерактивный режим с IPython для быстрой отладки
🔵Совместимость с Unix-утилитами и возможность их комбинирования с Python-скриптами

➡️Установка: pip install fire

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

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

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

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

📱 Репозиторий
🌐 Онлайн-версия

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥3👍1
🖥 Glances — это кроссплатформенный инструмент мониторинга системы в реальном времени, написанный на Python.

Отображает максимум полезной информации в минимальном терминальном пространстве (достаточно даже классических 80×24) — от загрузки CPU и памяти до сетевой активности и процессов.

Основные возможности:
🔵Поддержка Linux, macOS, Windows и BSD-систем
🔵Мониторинг CPU, памяти, swap, дисков, сетей, I/O, температуры, RAID, SMART, контейнеров Docker/Podman
🔵Отображение информации в текстовом и веб-интерфейсе
🔵Поддержка клиент/серверного режима для удалённого мониторинга
🔵Встроенный REST API и XML-RPC API
🔵Экспорт данных в CSV, JSON, InfluxDB, Prometheus, Elasticsearch, RabbitMQ и другие хранилища
🔵Подсветка и сортировка процессов по CPU, памяти, имени и I/O
🔵Адаптивный интерфейс под размер терминала или экрана
🔵Настраиваемые предупреждения и уведомления

➡️Установка минимальной версии:
pip install --user glances


➡️Установка фулловой версии:
pip install --user glances[all]


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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍1
Media is too big
VIEW IN TELEGRAM
👏 Two claps open – это Python-проект, который позволяет запускать приложения (например, браузер Chrome) или файлы с помощью двух хлопков в ладоши.

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

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

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

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

Основные возможности:
Более 20 встроенных тем, включая светлые и темные варианты
Простая настройка стилей с помощью ключевых слов, похожих на CSS-классы
Новые виджеты, такие как Meter, DateEntry, Floodgauge и стилизованные диалоговые окна
Встроенный редактор тем (ttkcreator) для создания и настройки собственных тем
Поддержка локализации на нескольких языках

➡️Установка: pip install ttkbootstrap

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

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

Для работы с прогресс-баром в коде используется библиотека rich.

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

from rich.console import Console
from rich.progress import Progress, SpinnerColumn, TextColumn
import time


def cool_loading_animation(description: str = "Загрузка данных...", total_steps: int = 10, delay_per_step: float = 0.3):
"""
Отображает анимацию загрузки с текстом.

Args:
description (str): Текст, отображаемый рядом со спиннером.
total_steps (int): Общее количество шагов для симуляции загрузки.
delay_per_step (float): Задержка в секундах для каждого шага.
"""
console = Console()

with Progress(
SpinnerColumn(),
TextColumn(f"[bold green]{{task.description}}"),
console=console,
transient=True, # Прогресс-бар исчезнет после завершения
) as progress:
task = progress.add_task(description, total=total_steps)
for _ in range(total_steps):
time.sleep(delay_per_step) # Симуляция работы
progress.advance(task)

console.print(f"[bold green] {description.replace('...', '')} Готово![/bold green]")


if __name__ == "__main__":
# Пример использования:
cool_loading_animation("Инициализация...", total_steps=5, delay_per_step=0.5)
cool_loading_animation("Обработка файлов...", total_steps=12, delay_per_step=0.2)
cool_loading_animation("Завершение...", total_steps=3, delay_per_step=0.7)


➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤‍🔥3👍2
👩‍💻 python-imgcat — это утилита, позволяющая отображать изображения прямо в терминале, используя протокол iTerm2 inline images.

Основные возможности:
🔵Отображение изображений в терминале.
🔵Поддержка PNG, JPEG, GIF и других форматов.
🔵Возможность интеграции с Python-скриптами.
🔵Работает в macOS и Linux (терминалы с поддержкой inline images).

➡️Установка: pip install imgcat

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤‍🔥2🔥1
💻 turbodrf — это Python-библиотека для Django Rest Framework, которая упрощает и ускоряет разработку API, добавляя удобные инструменты и улучшения поверх стандартного DRF.

Основные возможности:
🔵Упрощённые ViewSets — меньше кода для типичных CRUD-операций.
🔵Интеграция с фильтрацией и поиском — удобная настройка фильтров и сортировки.
🔵Быстрый старт — минимальные настройки для запуска API.
🔵Гибкость — легко расширяется и совместима с DRF.

➡️Установка: pip install turbodrf

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

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

Для сокращения ссылок в коде используется модуль pyshorteners, а для генерации qr-кода - qrcode.

➡️Установка модуля: pip install pyshorteners qrcode

import pyshorteners
import qrcode


def simple_shorten_and_qr(long_url, output_filename="simple_qr.png"):
s = pyshorteners.Shortener()
short_url = s.tinyurl.short(long_url)

qr = qrcode.QRCode(version=1, box_size=10, border=4)
qr.add_data(short_url)
qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white")
img.save(output_filename)
return short_url, output_filename


if __name__ == "__main__":
url = "https://www.google.com"
short_link, qr_file = simple_shorten_and_qr(url)
print(f"Сокращенная ссылка: {short_link}")
print(f"QR-код сохранен как: {qr_file}")


➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥2
✍️ python-gnupg — это Python-обёртка для утилиты GnuPG, позволяющая пользователям генерировать ключи и управлять ими, шифровать и расшифровывать данные, а также подписывать и проверять сообщения прямо из Python-кода.

Основные возможности:
🔵Работа с открытыми и закрытыми ключами (генерация, импорт, экспорт).
🔵Шифрование и расшифровка данных с использованием GPG.
🔵Подпись данных и проверка цифровых подписей.
🔵Поддержка ASCII-бронь и бинарных форматов.
🔵Возможность взаимодействовать с любыми командами GPG через удобный Python API.

➡️Установка: pip install python-gnupg

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

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

Нашёл способ получать прогноз погоды без регистрации для получения API и прочей ерунды, и решил поделиться им с вами.


В данном Shorts напишем код для получения прогноза погоды на 3 дня вперёд по названию города на Python.

💡Не забывайте, что вы можете предлагать ещё идеи для постов/статей/видосов - @it_start_suggestion_bot

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥4❤‍🔥3
Справочник Программиста
📺 Получаем погоду в городе на Python Нашёл способ получать прогноз погоды без регистрации для получения API и прочей ерунды, и решил поделиться им с вами. В данном Shorts напишем код для получения прогноза погоды на 3 дня вперёд по названию города на Python.…
⛅️Код для получения прогноза погоды без API на Python

Для получения прогноза погоды будет использоваться wttr.in, а для работы с HTTP-запросом в коде используется библиотека requests.

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

import requests

city = input("Введите название города: ")
url = f"https://wttr.in/{city}"

try:
res = requests.get(url)
print(res.text)
except:
print("Произошла ошибка, пожалуйста, повторите попытку позже...")


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

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

В данной статье напишем три скрипта для автоматизации задач с помощью Python.

📖Похожие статьи:
5 простых программ на Python
5 полезных скриптов на Python
Простые программы на Python

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥4👍2🔥1
🔥 yt-dlp-gui — это графическая оболочка для популярного инструмента yt-dlp, написанная на Python с использованием библиотеки tkinter.

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

Основные возможности:
Поддержка скачивания видео, аудио или плейлистов;
Выбор качества и формата;
Возможность автоматической установки yt-dlp и ffmpeg;
Удобный интерфейс с прогресс-баром и логами;
Поддержка прокси-серверов и аргументов командной строки.

➡️Установка:
git clone https://github.com/vokrob/yt-dlp-gui.git
cd yt-dlp-gui
pip install -r requirements.txt
python main.py


📱 Репозиторий
⚙️ exe-файл
📝 Статья

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥3❤‍🔥1
🖥 py‑pglite — это удобная обёртка на Python для PGlite — лёгкого, но настоящего PostgreSQL, запускаемого мгновенно и без настройки.

Отлично подходит для тестирования, предоставляя:
Zero‑config: не требуется установка PostgreSQL, Docker или внешняя конфигурация
Мгновенный запуск: от 2–3 с против 30–60 с при Docker
Изоляция тестов: каждый тест — свежая чистая БД
Нативный PostgreSQL: поддержка JSON, массивов, оконных функций и т.д.
Совместимость со стандартными клиентами: SQLAlchemy, Django, psycopg, asyncpg и прочими.

Пример использования с SQLAlchemy:
def test_sqlalchemy_just_works(pglite_session):
user = User(name="Alice", email="alice@test.com")
pglite_session.add(user)
pglite_session.commit()

assert user.id is not None
assert User.query.count() == 1 # Real PostgreSQL!


➡️Установка:
pip install py-pglite[sqlalchemy]   # для SQLAlchemy/SQLModel
pip install py-pglite[django] # для Django
pip install py-pglite[asyncpg] # для чистого asyncpg
pip install py-pglite[extensions] # с поддержкой pgvector и др.


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

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

Проще говоря, достаточно добавить один декоратор @pysnooper.snoop() к функции, и библиотека начнёт логировать все её шаги — какие строки выполняются, какие значения присваиваются переменным и как изменяется состояние программы.

Основные возможности:
🔵Минимум кода для отладки — достаточно одной строки.
🔵Вывод всех изменений переменных с их новыми значениями.
🔵Логирование в файл или консоль (можно указать путь к лог-файлу).
🔵Поддержка контекстного менеджера — можно отслеживать только нужные блоки кода.
🔵Понятные и наглядные логи — виден номер строки, выполняемый код и результат.

➡️Установка: pip install pysnooper

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
❤‍🔥7🔥2
🔥 На GitHub недавно обновился бесплатный обучающий репозиторий Think Python, 3rd edition — отличная база для изучения Python: от основ синтаксиса до ООП.

📘 Весь материал оформлен в виде Jupyter-ноутбуков: удобно читать, легко искать нужные темы. Чёткая структура и множество примеров кода делают обучение максимально понятным.


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

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