Справочник Программиста
Код для создания аудиокниги из PDF-файла на Python
➡️ Установка библиотек:
➡️ Справочник Программиста. Подписаться
pip install gtts pypdf2
import PyPDF2
from gtts import gTTS
def convert_pdf_to_audio(pdf_path, audio_path):
# Открываем PDF-файл в режиме бинарного чтения
with open(pdf_path, 'rb') as pdf_file:
# Создаём объект класса PdfReader
pdf_reader = PyPDF2.PdfReader(pdf_file)
text = ''
# Проходимся по каждой странице в PDF при помощи цикла
for page_num in range(len(pdf_reader.pages)):
# Извлекаем текущую страницу
page = pdf_reader.pages[page_num]
# Извлекаем текст с текущей страницы и добавляем его к строке 'text'
text += page.extract_text()
# Выводим извлеченный текст из PDF
print(text)
# Создаём объект класса gTTS для преобразования текста в речь
tts = gTTS(text=text, lang='ru')
# Сохраняем итоговый аудиофайл
tts.save(audio_path)
convert_pdf_to_audio('document.pdf', 'audio.mp3')
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤🔥5👍5
Фреймворк
Wooey
позволяет легко создавать графические интерфейсы для скриптов и команд Python.Его цель - облегчить развертывание скриптов, сделав их более доступными для пользователей, не имеющих опыта работы с командной строкой.
Основные особенности фреймворка:
Wooey
.pip install wooey
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥8👍3🔥3
Библиотека deface в Python
Сначала он находит все человеческие лица на каждом кадре видео, а затем применяет фильтр анонимизации (размытие или черные прямоугольники) к каждой обнаруженной области лица.
➡️ Установка библиотеки:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
deface
- это простой инструмент командной строки для автоматической анонимизации лиц на видео или фотографиях.Сначала он находит все человеческие лица на каждом кадре видео, а затем применяет фильтр анонимизации (размытие или черные прямоугольники) к каждой обнаруженной области лица.
pip install deface
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤🔥5🎉2
Библиотека
memray
предназначена для профилирования памяти. Предоставляет инструменты для управления памятью напрямую, что позволяет более гибко управлять ресурсами памяти и улучшить производительность приложения.Может генерировать различные отчеты, которые помогают анализировать данные об использовании памяти.
Может использоваться как инструмент командной строки, а также как библиотека для более детального профилирования задач.
Основные особенности библиотеки:
pip install memray
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥3👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Для сжатия видео в коде используется библиотека
moviepy
.pip install moviepy
from moviepy.editor import VideoFileClip
def compress_video(input_file, output_file, target_bitrate):
# Загрузка видеофайла
video = VideoFileClip(input_file)
# Изменение размера видео до высоты 360 пикселей
video = video.resize(height=360)
# Запись сжатого видеофайла с указанным битрейтом и кодеком "libx264"
video.write_videofile(output_file, bitrate=target_bitrate, codec="libx264")
# Сжатие видео "video.mp4" и сохранение его в файле "output_video.mp4" с целевым битрейтом "1000k"
compress_video("video.mp4", "output_video.mp4", "1000k")
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤🔥3
Обнаружение объектов на изображении при помощи Python
В данной статье напишем код на Python для обнаружения объектов на изображении.
➡️ Справочник Программиста. Подписаться
В данной статье напишем код на Python для обнаружения объектов на изображении.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥4👍4
🍅 Библиотека pythonspt в Python
Библиотека
Технология pomodoro - это метод управления рабочим временем, который основан на разделении работы на периоды, называемые "помидорами", каждый продолжительностью около 25 минут, с последующим коротким перерывом.
После нескольких помидоров следует более длительный перерыв. Этот метод позволяет сосредоточиться на задаче в течение определенного времени и улучшить продуктивность.
➡️ Установка библиотеки:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
pythonspt
- это простой терминальный таймер, в котором используется технология pomodoro.Технология pomodoro - это метод управления рабочим временем, который основан на разделении работы на периоды, называемые "помидорами", каждый продолжительностью около 25 минут, с последующим коротким перерывом.
После нескольких помидоров следует более длительный перерыв. Этот метод позволяет сосредоточиться на задаче в течение определенного времени и улучшить продуктивность.
pip install pythonspt
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7❤🔥4👍4
Media is too big
VIEW IN TELEGRAM
Код для объединения всех Excel-файлов на Python
Данный код объединяет все Excel-файлы по переданному пути в один, где таблицы из каждого файла сохраняются на отдельных листах.
Для получения всех файлов из директории в коде используется стандартный модуль
➡️ Установка openpyxl:
➡️ Справочник Программиста. Подписаться
Данный код объединяет все Excel-файлы по переданному пути в один, где таблицы из каждого файла сохраняются на отдельных листах.
Для получения всех файлов из директории в коде используется стандартный модуль
glob
, а для их объединения - openpyxl
.pip install
openpyxl
import openpyxl
import glob
# Путь к папке, содержащей файлы Excel
folder_path = './'
# Получаем список Excel-файлов в папке
files = glob.glob(folder_path + '/*.xlsx')
# Создаем новый Excel-файл
merged_file = openpyxl.Workbook()
# Обходим каждый файл и сохраняем таблицы на отдельных листах
for file in files:
# Читаем Excel-файл
wb = openpyxl.load_workbook(file)
# Получаем название файла без расширения
file_name = file.split('/')[-1].split('.')[0]
# Копируем каждый лист из исходного файла в объединенный файл
for sheet_name in wb.sheetnames:
# Создаем новый лист в объединенном файле
merged_sheet = merged_file.create_sheet(f"{file_name} - {sheet_name}")
# Получаем лист из исходного файла
sheet = wb[sheet_name]
# Копируем значения из исходного листа в новый лист
for row in sheet.iter_rows(values_only=True):
merged_sheet.append(row)
# Удаляем изначально созданный пустой лист
merged_file.remove(merged_file.active)
# Сохраняем объединенный файл
merged_file.save('merged_file.xlsx')
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥13❤🔥3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
Gradio
позволяет быстро создавать демонстрации или веб-приложения для моделей машинного обучения, API или любых произвольных функций Python с минимальным количеством кода.Предоставляет простой и настраиваемый пользовательский интерфейс для взаимодействия с моделями машинного обучения и обмена ими.
Основные возможности библиотеки:
Gradio
в режиме горячей перезагрузки, который автоматически перезагружает приложение при внесении изменений в файл.Gradio
.pip install gradio
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥4🔥3
Для получения информации о запущенных процессах в коде используется модуль
psutil
.Функция
process_iter()
из модуля psutil
используется для итерации по всем процессам, запущенным на компьютере. Возвращает генератор, который можно использовать для получения информации о каждом процессе, такой как идентификатор процесса (PID), имя процесса и другие атрибуты.pip install
psutil
import psutil
# Получаем генератор процессов с указанными атрибутами 'pid' и 'name'
processes = psutil.process_iter(['pid', 'name'])
# Проходимся по каждому процессу
for process in processes:
# Выводим идентификатор и имя процесса
print(f"PID: {process.info['pid']}, Название: {process.info['name']}")
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥5🔥4👍3
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
Cartopy
представляет собой инструмент для создания картографических визуализаций и географических анализов.Она является дополнением к библиотеке
Matplotlib
и предоставляет возможности для работы с географическими данными.Основные особенности библиотеки:
NumPy
и Pandas
, для обработки и визуализации данных.import matplotlib.pyplot as plt
import cartopy.crs as ccrs
def main():
# Создание фигуры размером 10x5
fig = plt.figure(figsize=(10, 5))
# Добавление подграфика с проекцией Robinson
ax = fig.add_subplot(1, 1, 1, projection=ccrs.Robinson())
# Установка расширения карты на глобальное
ax.set_global()
# Добавление фонового изображения на карту
ax.stock_img()
# Добавление контуров береговой линии на карту
ax.coastlines()
# Построение точки (-0.08, 51.53) с использованием проекции PlateCarree
ax.plot(-0.08, 51.53, 'o', transform=ccrs.PlateCarree())
# Построение линии от (-0.08, 51.53) до (132, 43.17) с использованием проекции PlateCarree
ax.plot([-0.08, 132], [51.53, 43.17], transform=ccrs.PlateCarree())
# Построение линии от (-0.08, 51.53) до (132, 43.17) с использованием проекции Geodetic
ax.plot([-0.08, 132], [51.53, 43.17], transform=ccrs.Geodetic())
# Отображение графика
plt.show()
if __name__ == '__main__':
main()
pip install cartopy
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍4❤🔥2
В данном shorts напишем код для преобразования речи в текст на Python.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤🔥3
Справочник Программиста
Код для преобразование речи в текст на Python
➡️ Установка библиотеки:
➡️ Справочник Программиста. Подписаться
pip install SpeechRecognition
# pip install SpeechRecognition
import speech_recognition as sr
r = sr.Recognizer()
with sr.Microphone() as source:
print("Скажите что-нибудь...")
audio = r.listen(source)
try:
text = r.recognize_google(audio, language="ru-RU")
print(f"Вы сказали: {text}")
except sr.UnknownValueError:
print("Не удалось распознать речь")
except sr.RequestError as e:
print(f"Ошибка сервиса распознавания речи; {e}")
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍6❤🔥2
Библиотека
polars
предназначена для работы с данными в формате DataFrame, разработанная для обеспечения быстрой и эффективной обработки данных.Она вдохновлена популярной библиотекой
pandas
, но предлагает еще более высокую производительность и возможности для работы с большими наборами данных, которые могут не поместиться в памяти.Основные особенности библиотеки:
NumPy
и PyArrow
.pip install polars
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥9❤🔥3👍2
Библиотека telegram-phone-number-checker в Python
Библиотека
Благодаря ей можно получить информацию о имени пользователя, имени и идентификаторах, связанных с заданным номером телефона.
➡️ Установка библиотеки:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
Библиотека
telegram-phone-number-checker
позволяет производить проверки, связан ли телефонный номер с аккаунтами Telegram.Благодаря ей можно получить информацию о имени пользователя, имени и идентификаторах, связанных с заданным номером телефона.
pip install telegram-phone-number-checker
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥10👍4❤🔥3🤔1😎1
Для получения информации о сетевых подключениях в коде используется модуль
psutil
.Функция
net_connections()
из модуля psutil
используется для получения информации о сетевых соединениях, установленных процессами на компьютере.pip install
psutil
import psutil
connections = psutil.net_connections()
for conn in connections:
print(f"Локальный адрес: {conn.laddr},"
f"Внешний адрес: {conn.raddr},"
f"Статус: {conn.status}")
# Пример вывода:
# Локальный адрес: addr(ip='192.168.31.244', port=4160), Внешний адрес: (ip='192.168.31.244', port=7061), Статус: ESTABLISHED
# Локальный адрес: addr(ip='127.0.0.1', port=7342), Внешний адрес: (ip='127.0.0.1', port=61896), Статус: ESTABLISHED
# ...
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥11❤🔥5
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека
pikepdf
предназначена для работы с PDF-файлами. Позволяет читать и записывать PDF-документы, а также выполнять различные операции с ними.Некоторые возможности библиотеки:
import pikepdf
# Открываем первый PDF-файл
pdf1 = pikepdf.open('example1.pdf')
# Открываем второй PDF-файл
pdf2 = pikepdf.open('example2.pdf')
# Объединяем страницы из обоих PDF-файлов
pdf1.pages.extend(pdf2.pages)
# Сохраняем объединенный PDF-файл
pdf1.save('combined.pdf')
pip install pikepdf
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍4❤🔥2
This media is not supported in your browser
VIEW IN TELEGRAM
Функция
getWindowsAt()
из модуля pygetwindow
возвращает список окон на экране, которые содержат указанную точку (x, y).Принимает координаты точки и возвращает список окон, которые содержат эту точку.
import pygetwindow as gw
# Получение списка окон, расположенных по координатам (500, 500)
windows = gw.getWindowsAt(500, 500)
# Перебор каждого окна в списке
for window in windows:
# Вывод заголовка каждого окна
print(window.title)
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8❤🔥3😎1
Функция oct() в Python
В данной статье рассмотрим, как работают функции
➡️ Справочник Программиста. Подписаться
В данной статье рассмотрим, как работают функции
oct()
в Python.Please open Telegram to view this post
VIEW IN TELEGRAM
👍6❤🔥3
Высокопроизводительная замена циклу asyncio в Python
Он реализован на Cython и использует библиотеку
Основные особенности
🔵 Высокая производительность;
🔵 Совместимость с
🔵 Использование
➡️ Установка uvloop:
📱 Репозиторий
➡️ Справочник Программиста. Подписаться
uvloop
является быстрой заменой встроенного цикла событий asyncio
.Он реализован на Cython и использует библиотеку
libuv
. Также он позволяет улучшить производительность асинхронного кода, особенно ввода-вывода, благодаря своей оптимизации и использованию низкоуровневых системных вызовов.Основные особенности
uvloop
:asyncio
;libuv
: uvloop использует библиотеку libuv
для обеспечения высокой производительности и эффективности.pip install uvloop
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥6🔥3🤔1