Библиотека HTTPX в Python 🌐
Она представляет собой асинхронный аналог популярной библиотеки
➡️ Установка библиотеки:
🖥 Репозиторий
⚙️ Документация
➡️ Справочник программиста. Подписаться
HTTPX
- это быстрая библиотека для асинхронных HTTP-запросов.Она представляет собой асинхронный аналог популярной библиотеки
requests
, но с поддержкой HTTP/1.1 и HTTP/2. Это означает, что HTTPX
может использоваться для создания асинхронных приложений, а также поддерживает синхронный код, что делает её универсальным инструментом для работы с HTTP-запросами.pip install httpx
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥6❤🔥1
Код для преобразования изображения в чёрно-белое на Python
Для преобразования изображения в чёрно-белое в коде используется библиотека
➡️ Установка библиотеки:
➡️ Справочник программиста. Подписаться
Для преобразования изображения в чёрно-белое в коде используется библиотека
Pillow
.pip install Pillow
from PIL import Image
# Открываем изображение
image = Image.open("image.jpg")
# Преобразуем в чёрно-белое
black_and_white = image.convert("L")
# Сохраняем новое изображение
black_and_white.save("output.jpg")
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤🔥7
Библиотека uuid6 в Python
Библиотека
Эти новые форматы основаны на времени и представлены функциями
➡️ Установка библиотеки:
🖥 Репозиторий
➡️ Справочник программиста. Подписаться
Библиотека
uuid6
представляет собой расширение стандартной библиотеки uuid
, которое включает в себя новые форматы UUID, ориентированные на использование в качестве ключей баз данных.Эти новые форматы основаны на времени и представлены функциями
uuid6()
, uuid7()
, и uuid8()
из черновика IETF.pip install uuid6
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥7👍4🔥1
Библиотека Requests-HTML в Python
Библиотека
Особенности:
🔵 Полная поддержка JavaScript!
🔵 Селекторы CSS (в стиле jQuery, благодаря PyQuery).
🔵 Селекторы XPath.
🔵 Имитированный пользовательский агент (как настоящий веб-браузер).
🔵 Автоматическое отслеживание перенаправлений.
🔵 Объединение соединений и сохранение файлов cookie.
🔵 Работа с запросами с возможностями синтаксического анализа.
🔵 Поддержка асинхронности.
➡️ Установка библиотеки:
🖥 Репозиторий
➡️ Справочник программиста. Подписаться
Библиотека
Requests-HTML
предназначена для того, чтобы сделать синтаксический анализ HTML (например, сканирование веб-страниц) максимально простым и интуитивно понятным.Особенности:
pip install requests-html
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5👍4
Media is too big
VIEW IN TELEGRAM
Для парсинга и сохранения страницы в PDF-файл в коде используются библиотеки
pyppdf
и pyppeteer
.pip install pyppdf
pyppeteer
import argparse
import pyppdf
import re
from pyppeteer.errors import PageError, TimeoutError, NetworkError
def main():
parser = argparse.ArgumentParser(description='Загрузка страницы в формате PDF')
parser.add_argument('--link', '-l', action='store', dest='link',
required=True, help='Укажите ссылку на страницу.')
parser.add_argument('--name', '-n', action='store', dest='name',
required=False, help='Укажите имя файла для сохранения.')
arguments = parser.parse_args()
url = arguments.link
if not arguments.name:
name = re.sub(r'^\w+://', '', url.lower())
name = name.replace('/', '-')
else:
name = arguments.name
if not name.endswith('.pdf'):
name = name + '.pdf'
print(f'Имя файла: {name}')
try:
pyppdf.save_pdf(name, url)
except PageError:
print('Не удалось загрузить страницу.')
except TimeoutError:
print('Тайм-аут.')
except NetworkError:
print('Нет доступа к сети.')
if __name__ == '__main__':
main()
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤🔥3😎1
Методы выравнивая строк в Python 👀
🔵
🔵
🔵
🔵
➡️ Справочник Программиста. Подписаться
ljust()
- выравнивает строку по левому краю путем добавления заполнительных символов справа от строки до указанной ширины.rjust()
- выравнивает строку по правому краю путем добавления заполнительных символов слева от строки до указанной ширины.center()
- выравнивает строку по центру путем добавления заполнительных символов с обоих концов строки до указанной ширины.zfill()
- выравнивает строку по правому краю путем добавления нулевых символов слева от строки до указанной ширины.Please open Telegram to view this post
VIEW IN TELEGRAM
👍11❤🔥2
Библиотека TextBlob в Python 📝
Библиотека
Предоставляет простой и удобный API для выполнения различных задач, таких как анализ тональности, токенизация, исправление опечаток и многое другое.
Особенности
🔵 Анализ тональности: позволяет определить эмоциональную окраску текста, вычислив его полярность и субъективность.
🔵 Токенизация: позволяет разбить текст на отдельные слова или фразы.
🔵 Исправление ошибок: может исправлять опечатки и ошибки в тексте.
🔵 Извлечение ключевых слов: позволяет извлекать ключевые слова из текста.
🔵 Машинный перевод: поддерживает машинный перевод текста на различные языки.
🔵 Извлечение именованных сущностей: позволяет определить и извлечь именованные сущности из текста, такие как имена людей, организации, места и т.д.
🔵 Анализ частей речи: может определить части речи каждого слова в тексте, такие как существительное, глагол, прилагательное и т.д.
🔵 Извлечение фраз: позволяет извлекать фразы из текста, основываясь на грамматической структуре и синтаксических правилах.
🔵 Создание собственных корпусов: позволяет создавать собственные корпусы текстов для обучения моделей машинного обучения.
🔵 Лемматизация: может приводить слова к их базовой форме.
🔵 Выделение ключевых предложений: может выделять ключевые предложения из текста, основываясь на их важности и содержании.
🔵 Работа с морфологическими формами: позволяет работать с различными морфологическими формами слов, такими как единственное и множественное число, причастия и т.д.
➡️ Установка библиотеки:
🖥 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
TextBlob
предназначена для обработки естественного языка (Natural Language Processing, NLP).Предоставляет простой и удобный API для выполнения различных задач, таких как анализ тональности, токенизация, исправление опечаток и многое другое.
Особенности
TextBlob
:pip install textblob
Please open Telegram to view this post
VIEW IN TELEGRAM
👍4🔥2
Код для получения информации об использовании дисков на Python 💽
Для получения информации о дисках в коде используется библиотека
➡️ Установка библиотек:
➡️ Справочник Программиста. Подписаться
Для получения информации о дисках в коде используется библиотека
psutil
.pip install psutil
import psutil
def get_size(bytes, suffix="B"):
factor = 1024 # Коэффициент масштабирования (в килобайтах)
for unit in ["", "K", "M", "G", "T", "P"]: # Перебор единиц измерения
if bytes < factor: # Если байты меньше текущего коэффициента
return f"{bytes:.2f}{unit}{suffix}" # Возвращаем размер с двумя знаками после запятой
bytes /= factor # Делим байты на текущий коэффициент
partitions = psutil.disk_partitions() # Получаем информацию о разделах диска
for partition in partitions: # Перебираем каждый раздел
print(f"Диск: {partition.device}")
print(f" Точка монтирования: {partition.mountpoint}")
print(f" Тип файловой системы: {partition.fstype}")
try:
partition_usage = psutil.disk_usage(partition.mountpoint) # Получаем статистику использования диска
except PermissionError:
continue # Если нет прав на чтение, пропускаем этот раздел
print(f" Общий размер: {get_size(partition_usage.total)}")
print(f" Использовано: {get_size(partition_usage.used)}")
print(f" Свободно: {get_size(partition_usage.free)}")
print(f" Процент использования: {partition_usage.percent}%")
disk_io = psutil.disk_io_counters() # Получаем статистику дисковых операций ввода-вывода
print(f"Общее чтение: {get_size(disk_io.read_bytes)}")
print(f"Общая запись: {get_size(disk_io.write_bytes)}")
# Пример вывода в Windows:
# Диск: C:\
# Точка монтирования: C:\
# Тип файловой системы: NTFS
# Общий размер: 238.47GB
# Использовано: 150.23GB
# Свободно: 88.24GB
# Процент использования: 63.0%
# Диск: D:\
# Точка монтирования: D:\
# Тип файловой системы: NTFS
# Общий размер: 931.51GB
# Использовано: 512.34GB
# Свободно: 419.17GB
# Процент использования: 55.0%
# Общее чтение: 1.23TB
# Общая запись: 567.89GB
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍4😎1
Библиотека Streamlit в Python
Библиотека
Она позволяет создавать простые и интуитивно понятные веб-приложения для визуализации данных, построения графиков и развертывания моделей машинного обучения.
Преимущества библиотеки:
🔵 Простота использования: позволяет быстро и легко создавать пользовательские интерфейсы без необходимости в глубоких знаниях веб-разработки.
🔵 Быстрая разработка: упрощает процесс разработки веб-приложений, позволяя быстро создавать итеративные прототипы и экспериментировать с различными идеями.
🔵 Интеграция с библиотеками визуализации данных: легко интегрируется с популярными библиотеками визуализации данных, такими как
🔵 Автоматическое обновление: автоматически обновляет веб-приложение при изменении кода, что позволяет мгновенно видеть результаты своих изменений без необходимости перезапуска приложения.
🔵 Гибкость и масштабируемость: предоставляет гибкость в выборе инструментов и библиотек для создания веб-приложений. Также масштабируется для работы с большими объемами данных и поддерживает развертывание на различных платформах.
➡️ Установка библиотеки:
🖥 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Библиотека
Streamlit
предназначена для разработки интерактивных веб-приложений.Она позволяет создавать простые и интуитивно понятные веб-приложения для визуализации данных, построения графиков и развертывания моделей машинного обучения.
Преимущества библиотеки:
Matplotlib
, Altair
и Pandas
.pip install streamlit
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5👍3❤🔥1
Функция hex() в Python
В данной статье рассмотрим, как работает функция
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим, как работает функция
hex()
в Python.Please open Telegram to view this post
VIEW IN TELEGRAM
👍4❤🔥2
Библиотека JMESPath в Python
Библиотека
Она позволяет выполнять поиск, фильтрацию и преобразование данных в формате JSON.
➡️ Установка библиотеки:
🖥 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
JMESPath
представляет собой язык запросов для работы с JSON-данными.Она позволяет выполнять поиск, фильтрацию и преобразование данных в формате JSON.
pip install jmespath
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6❤🔥5👍2
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека termtosvg в Python 👩💻
Написан на Python и совместим с Linux, macOS и BSD-системами.
Чтобы установить
🔵 Установить зависимости:
🔵 Установить termtosvg:
🖥 Репозиторий
⚙️ Руководство
➡️ Справочник Программиста. Подписаться
termtosvg
- это инструмент для записи сеансов работы в терминале в Linux и их преобразования в отдельные анимации SVG.Написан на Python и совместим с Linux, macOS и BSD-системами.
Чтобы установить
termtosvg
, необходимо выполнить следующие шаги:pip3 install --user pyte python-xlib svgwrite
pip3 install --user termtosvg
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤🔥2🔥2
Код для получения реверсивного видео на Python
Для ревёрса видео в коде используется библиотека
➡️ Установка библиотек:
➡️ Справочник Программиста. Подписаться
Для ревёрса видео в коде используется библиотека
cv2
.pip install opencv-python
import cv2
def reverse_frames(video_path, output_path):
# Открываем видеофайл
cap = cv2.VideoCapture(video_path)
# Получаем количество кадров в секунду видео
fps = cap.get(cv2.CAP_PROP_FPS)
# Получаем ширину и высоту каждого кадра
frame_width = int(cap.get(cv2.CAP_PROP_FRAME_WIDTH))
frame_height = int(cap.get(cv2.CAP_PROP_FRAME_HEIGHT))
# Получаем общее количество кадров в видео
total_frames = int(cap.get(cv2.CAP_PROP_FRAME_COUNT))
# Определяем кодек для выходного видео
fourcc = cv2.VideoWriter_fourcc(*"mp4v")
# Создаем объект VideoWriter для записи обратных кадров в новый видеофайл
out = cv2.VideoWriter(output_path, fourcc, fps, (frame_width, frame_height))
# Проходимся по кадрам в обратном порядке
for frame_no in reversed(range(total_frames)):
# Устанавливаем позицию захвата видео на текущий кадр
cap.set(cv2.CAP_PROP_POS_FRAMES, frame_no)
# Читаем кадр
ret, frame = cap.read()
# Если кадр не может быть прочитан, выходим из цикла
if not ret:
break
# Записываем кадр в выходной видеофайл
out.write(frame)
# Освобождаем объект захвата видео
cap.release()
# Освобождаем объект записи видео
out.release()
video_path = "video.mp4"
output_path = "output.mp4"
reverse_frames(video_path, output_path)
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍8❤🔥4🔥4😎1
Библиотека retrying в Python 🔄
Библиотека
Она позволяет упростить задачу добавления поведения повторных попыток к практически любому коду.
Основной сценарий использования
Особенности библиотеки:
🔵 Общий API декоратора;
🔵 Указание условия остановки (например, ограничение по количеству попыток);
🔵 Указание условия ожидания (например, экспоненциальная задержка между попытками);
🔵 Настраиваемые повторы при возникновении исключений;
🔵 Настраиваемые повторы при ожидаемых возвращаемых результатах.
➡️ Установка библиотеки:
🖥 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
retrying
предназначена для повторных попыток выполнения кода с заданными условиями повтора.Она позволяет упростить задачу добавления поведения повторных попыток к практически любому коду.
Основной сценарий использования
retrying
заключается в повторном выполнении функции, если возникает исключение, пока не будет получено значение. Например, можно использовать retrying
для повторной попытки выполнения функции, которая может быть ненадежной, пока не будет получен корректный результат.Особенности библиотеки:
pip install retrying
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7❤🔥2🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Фреймворк Sanic в Python
Фреймворк
Особенности фреймворка:
🔵 Асинхронность: использует асинхронную модель программирования, основанную на синтаксисе async/await в Python 3.5 и выше
🔵 Высокая производительность: благодаря использованию асинхронности и оптимизациям,
🔵 Поддержка множества протоколов: поддерживает протоколы HTTP и WebSocket, что позволяет разрабатывать как веб-приложения, так и приложения в реальном времени.
🔵 Интеграция с базами данных: имеет поддержку различных баз данных, включая PostgreSQL, MySQL и SQLite, через библиотеку SQLAlchemy Core.
🔵 Удобная настройка окружения: с помощью пакетов
🔵 Простота использования: предлагает простой и интуитивно понятный синтаксис для создания веб-приложений. Он также имеет хорошую документацию и активное сообщество разработчиков.
➡️ Установка библиотеки:
🖥 Репозиторий
⚙️ Документация
➡️ Справочник Программиста. Подписаться
Фреймворк
Sanic
предназначен для разработки веб-приложений. Предоставляет асинхронную обработку запросов и отличается высокой производительностью.Особенности фреймворка:
Sanic
обладает высокой скоростью обработки запросов.sanic-envconfig
и environs
можно легко настроить окружение вашего приложения, включая безопасность, настройки базы данных и другие параметры.pip install sanic
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥10👍4
This media is not supported in your browser
VIEW IN TELEGRAM
Код для генерации цитат 🗯
Для получения случайных цитат в коде используется библиотеку
➡️ Установка библиотек:
➡️ Справочник Программиста. Подписаться
Для получения случайных цитат в коде используется библиотеку
requests
, а для их перевода на русский язык - googletrans
.pip install requests
googletrans==3.1.0a0
import requests
from googletrans import Translator
# Функция для генерации случайной цитаты
def generate_quote():
# Отправляем GET-запрос к API ZenQuotes для получения случайной цитаты
response = requests.get("https://zenquotes.io/api/random")
# Проверяем, был ли запрос успешным (код статуса 200)
if response.status_code == 200:
# Извлекаем цитату и автора из JSON-ответа
data = response.json()
quote = data[0]['q']
author = data[0]['a']
# Создаем объект Translator
translator = Translator()
# Переводим автора и цитату на русский язык
author = translator.translate(author, dest='ru').text
quote = translator.translate(quote, dest='ru').text
# Возвращаем переведенную цитату с автором
return f'{author} - {quote}'
else:
# Возвращаем сообщение об ошибке, если запрос не был успешным
return "Ошибка при получении цитаты. Пожалуйста, попробуйте еще раз позже."
# Вызываем функцию generate_quote и выводим переведенную цитату
print(generate_quote())
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍4❤🔥3
5 полезных скриптов на Python
В данной статье рассмотрим 5 полезных скриптов на Python.
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим 5 полезных скриптов на Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥4👍2
Библиотека Dateparser в Python
Библиотека
Может определять различные форматы даты и времени в строке и преобразовывать их в стандартный формат Python.
Некоторые особенности библиотеки:
🔵 Обобщенный разбор дат на более чем 200 языковых локалей и множество форматов в языково-независимом стиле.
🔵 Разбор относительных дат, таких как "1 минуту назад", "2 недели назад", "3 месяца, 1 неделя и 1 день назад", "через 2 дня", "завтра".
🔵 Разбор дат с указанием часовых поясов или смещений относительно UTC, например "14 августа 2015 г. EST", "4 июля 2013 г. PST", "21 июля 2013 г. 22:15 +0500".
🔵 Поиск дат в длинных текстах.
🔵 Поддержка календарных систем, отличных от григорианского календаря.
➡️ Установка библиотеки:
🖥 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
Dateparser
предназначена для преобразования строки в объект datetime
без необходимости явно указывать формат даты.Может определять различные форматы даты и времени в строке и преобразовывать их в стандартный формат Python.
Некоторые особенности библиотеки:
pip install dateparser
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6👍4🔥2😎1