Справочник Программиста
6.36K subscribers
1.3K photos
376 videos
64 files
1.63K 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
This media is not supported in your browser
VIEW IN TELEGRAM
Библиотека Unstructured в Python

Библиотека Unstructured предназначена для упрощения процесса извлечения текста из различных типов документов, таких как PDF, DOCX, HTML, и другие.

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

Основные возможности библиотеки:
🔵Извлечение текста из различных форматов документов
🔵Интеграция с различными библиотеками для обработки форматов
🔵Обработка и нормализация текста
🔵Поддержка различных методов извлечения текста
🔵Унифицированный интерфейс
🔵Расширяемость и настраиваемость

Пример кода для извлечения текста из html-файла
from unstructured.partition.html import partition_html

# Путь к HTML-файлу
html_file_path = 'index.html'

# Загрузка HTML-документа и извлечение текста
elements = partition_html(html_file_path)

# Объединение текста из всех элементов
text = "\n".join([str(element) for element in elements])
print(text)


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

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

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

В данной статье напишем 5 простых и полезных программ на Python.

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥5❤‍🔥2👍2
Справочник Программиста
🐈 Код для получения случайных изображений кошек на Python Продолжая тему интересных API, нашёл The Cat API, который позволяет получать случайные изображения кошек. Надеюсь это кому-нибудь будет полезно. Для обращения к API в коде используется библиотека…
This media is not supported in your browser
VIEW IN TELEGRAM
🦮 Код для получения случайных изображений собак на Python

Вижу получение случайных изображений котов вам понравилось, так может и эта тема будет интересна))

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

Для обращения к API в коде используется библиотека requests, а для работы с изображениями - io и Pillow.

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

import requests
from PIL import Image
from io import BytesIO

API = 'https://api.thedogapi.com/v1'


def get_random_dog_image():
# Выполняем GET-запрос к API
response = requests.get(f'{API}/images/search')

if response.status_code == 200: # Проверяем, успешен ли запрос
# Преобразуем ответ в формате JSON в словарь
data = response.json()
# Извлекаем URL изображения из данных
image_url = data[0]['url']
# Возвращаем URL изображения
return image_url
else: # Если запрос не успешен
# Выбрасываем исключение с сообщением об ошибке
raise Exception(f'Ошибка при получении данных от The Dog API: {response.status_code}')


def display_image(image_url):
# Выполняем GET-запрос для получения изображения
response = requests.get(image_url)

# Проверяем, успешен ли запрос
if response.status_code == 200:
# Извлекаем содержимое ответа (данные изображения)
img_data = response.content
# Открываем изображение из байтового потока
img = Image.open(BytesIO(img_data))
# Показываем изображение
img.show()
else: # Если запрос не успешен
# Выбрасываем исключение с сообщением об ошибке
raise Exception(f'Ошибка при получении изображения с {image_url}: {response.status_code}')


def main():
# Получаем URL случайного изображения собаки
image_url = get_random_dog_image()
# Печатаем URL изображения
print(f'URL изображения собаки: {image_url}')
# Отображаем изображение
display_image(image_url)


if __name__ == '__main__':
main()


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

В данном shorts напишем код для блокировки сайтов на Python.

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

Для работы с SSH в коде используется библиотека paramiko.

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

import paramiko

# Устанавливаем SSH-соединение
client = paramiko.SSHClient()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())

# Подключаемся к удаленному серверу
client.connect('hostname', username='username', password='password')

# Открываем SFTP-сессию
sftp = client.open_sftp()

# Удаляем файл с удаленного сервера
sftp.remove('remote_file.txt')

# Закрываем SFTP-сессию
sftp.close()

# Закрываем соединение
client.close()


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

PyCaret - это библиотека машинного обучения с открытым исходным кодом, разработанная для автоматизации и упрощения процессов машинного обучения.

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

Основные особенности библиотеки:
🔵Удобство использования: упрощает процесс создания и использования моделей машинного обучения с минимальным количеством кода.
🔵Поддержка всех этапов машинного обучения: охватывает весь жизненный цикл моделей машинного обучения, включая предварительную обработку данных, выбор моделей, настройку гиперпараметров, интерпретацию моделей и развертывание.
🔵Разнообразие моделей: поддерживает широкий спектр алгоритмов для задач классификации, регрессии, кластеризации, анализа временных рядов и обработки данных.
🔵Интеграция с другими библиотеками: легко интегрируется с популярными библиотеками, такими как scikit-learn, XGBoost, LightGBM и CatBoost, а также с инструментами для визуализации данных, такими как Matplotlib и Seaborn.
🔵Автоматизация рабочих процессов: позволяет автоматизировать многие рутинные задачи, такие как подбор гиперпараметров, генерация метрик оценки моделей и создание отчетов.

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

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

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

Библиотека screeninfo используется для получения информации о подключённых дисплеях (мониторах), таких как разрешение, размеры и позиция на виртуальном рабочем столе.

Пример кода
from screeninfo import get_monitors

# Получение информации о мониторах
monitors = get_monitors()

# Вывод информации о мониторах
for monitor in monitors:
print(f"Монитор: {monitor.name}")
print(f"Разрешение: {monitor.width}x{monitor.height}")
print(f"Физический размер: {monitor.width_mm}x{monitor.height_mm} мм")
print(f"Позиция: {monitor.x},{monitor.y}")
print("\n")


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

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

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

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

Основные особенности фреймворка:
🔵Асинхронность: изначально разработан как асинхронный фреймворк, что позволяет ему эффективно обрабатывать большое количество одновременных соединений.
🔵Производительность: способен обслуживать тысячи клиентов одновременно, что делает его подходящим для создания реальных веб-приложений, требующих высокой производительности.
🔵Встроенный веб-сервер: включает встроенный веб-сервер, что упрощает процесс разработки и развертывания приложений.
🔵Поддержка WebSockets: имеет встроенную поддержку WebSockets, что позволяет легко создавать приложения, требующие двусторонней связи в реальном времени, такие как чаты или системы уведомлений.
🔵Маршрутизация и обработка запросов: предоставляет удобные средства для маршрутизации запросов и их обработки, что упрощает разработку RESTful API и других веб-приложений.
🔵Шаблонизация: включает систему шаблонов, которая позволяет легко генерировать HTML-страницы.

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

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

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

Для работы с Excel в коде используется библиотека openpyxl.

Данный код можно расценивать как шаблон и дополнять различными данными.

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

from openpyxl import Workbook
from openpyxl.chart import BarChart, Reference

# Создаём новый Excel-файл и выбираем активный лист
wb = Workbook()
ws = wb.active

# Добавляем данные о продажах различных продуктов
data = [
['Продукт', 'Продажи в январе', 'Продажи в феврале', 'Продажи в марте'],
['Продукт A', 30, 25, 40],
['Продукт B', 20, 35, 30],
['Продукт C', 35, 30, 25],
['Продукт D', 15, 20, 35],
]

for row in data:
ws.append(row)

# Создаем объект диаграммы
chart = BarChart()
chart.title = "Ежемесячные продажи продуктов"
chart.x_axis.title = 'Продукт'
chart.y_axis.title = 'Продажи'

# Диапазон данных для диаграммы (исключая заголовки)
data = Reference(ws, min_col=2, min_row=1, max_col=4, max_row=len(data))
categories = Reference(ws, min_col=1, min_row=2, max_row=len(data))

chart.add_data(data, titles_from_data=True)
chart.set_categories(categories)

# Добавляем диаграмму на лист
ws.add_chart(chart, "E2")

# Сохраняем файл
wb.save("ежемесячные_продажи.xlsx")


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

Библиотека Labelme предназначена для аннотирования изображений.

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

Основные функции и особенности библиотеки:
🔵Интерфейс: Простой и интуитивно понятный графический интерфейс пользователя (GUI), который позволяет легко и быстро создавать аннотации.
🔵Типы аннотаций:
🟢Полигональные аннотации: Позволяет рисовать многоугольники вокруг объектов.
🟢Прямоугольные аннотации: Позволяет создавать прямоугольные рамки вокруг объектов.
🟢Аннотации точек и линий: Позволяет размечать ключевые точки и линии.
🔵Поддержка форматов: Сохранение аннотаций в формате JSON, который может быть легко преобразован в другие форматы, такие как COCO или Pascal VOC.
🔵Интеграция с другими библиотеками: Легкая интеграция с другими инструментами и библиотеками для дальнейшей обработки данных.

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

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

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

Для конвертации валют мы будем использовать ExchangeRate API. Получить API key можно на официальном сайте (либо воспользуйтесь моим, оставлю его в коде 😉).

Для обращения к API в коде используется библиотека requests.

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

import requests


def get_exchange_rate(api_key, base_currency, target_currency):
# Формируем URL для API-запроса с использованием переданных параметров
url = f"https://v6.exchangerate-api.com/v6/{api_key}/latest/{base_currency}"
# Выполняем GET-запрос к API
response = requests.get(url)
# Преобразуем ответ в формат JSON
data = response.json()

# Проверяем статус ответа, если 200
if response.status_code == 200:
# Извлекаем курс обмена для целевой валюты
exchange_rate = data['conversion_rates'][target_currency]
# Возвращаем курс обмена
return exchange_rate
else:
# В случае ошибки возвращаем None
return None


# Определяем главную функцию
def main():
# Ключ API
api_key = "ca21b9ace9dec6441d76d283"
# Базовая валюта
base_currency = "USD"
# Целевая валюта
target_currency = "EUR"

# Получаем курс обмена с использованием функции get_exchange_rate
rate = get_exchange_rate(api_key, base_currency, target_currency)

# Проверяем, удалось ли получить курс обмена
if rate:
# Если удалось, выводим курс на экран
print(f"Обменный курс {base_currency} к {target_currency} составляет {rate}")
else:
# Если не удалось, выводим сообщение об ошибке
print("Не удалось получить обменный курс")


if __name__ == "__main__":
main()


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

Библиотека ultralytics предназначена для работы с моделями компьютерного зрения, в первую очередь, с моделями YOLO (You Only Look Once), которые предназначены для задач детекции объектов.

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

Основные возможности библиотеки:
🔵Интуитивно понятный API: Библиотека разработана с учетом простоты использования, что позволяет даже новичкам быстро освоиться и начать работать с моделями YOLO.
🔵Поддержка различных моделей YOLO: Поддерживает различные версии моделей YOLO, включая YOLOv5 и YOLOv8.
🔵Трансферное обучение: Возможность легко адаптировать предобученные модели для решения конкретных задач с помощью трансферного обучения.
🔵Поддержка различных форматов данных: Поддерживает различные форматы аннотаций и данных, что упрощает процесс подготовки данных.
🔵Высокая производительность: Оптимизированные алгоритмы и эффективные реализации обеспечивают высокую скорость и точность детекции объектов.

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

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

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

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

Основные возможности библиотеки:
🔵Интерактивная разметка данных: Предоставляет удобные инструменты для интерактивной разметки текстов.
🔵Поддержка различных типов разметки: Поддерживает разметку различных типов данных, таких как текст, изображения, и последовательности.
🔵Интеграция с моделями и фреймворками: Интегрируется с популярными моделями и фреймворками, такими как Hugging Face Transformers, что позволяет легко использовать размеченные данные для обучения и оценки моделей.
🔵Визуализация разметки: Инструменты визуализации позволяют пользователям видеть результаты своей работы и оценивать качество разметки.
🔵Автоматическая разметка: Может использовать предварительно обученные модели для автоматической разметки данных, что значительно ускоряет процесс подготовки данных.

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

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

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

Библиотека Speedtest используется для измерения скорости интернет-соединения.

Пример кода
import speedtest

# Создаем объект Speedtest
st = speedtest.Speedtest()

# Получаем список серверов
st.get_servers()

# Выбираем лучший сервер на основе пинга
st.get_best_server()

# Выполняем тест на загрузку
download_speed = st.download()

# Выполняем тест на выгрузку
upload_speed = st.upload()

# Получаем результаты
ping = st.results.ping

print(f"Пинг: {ping} ms")
print(f"Скорость загрузки: {download_speed / 1_000_000:.2f} Mbps")
print(f"Скорость выгрузки: {upload_speed / 1_000_000:.2f} Mbps")


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

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

➡️Справочник Программиста. Подписаться
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥7👍4❤‍🔥2🎉1🤨1
This media is not supported in your browser
VIEW IN TELEGRAM
Утилита NormCap в Python

NormCap - утилита для автоматического распознавания текста на изображениях.

Работает на Linux, macOS и Windows.

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

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

Библиотека Whoogle-search предназначена для выполнения поисковых запросов через публичный поисковый движок Whoogle.

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

Основные характеристики библиотеки:
🔵Простота использования: Предоставляет простой интерфейс для выполнения поисковых запросов без необходимости в специфических знаниях API.
🔵Независимость от API: Поскольку Whoogle-search использует DuckDuckGo в качестве основной поисковой системы, он позволяет обойти сложности и требования API других поисковых систем.
🔵Гибкость и настройка: Возможность управления параметрами поиска, такими как количество результатов или наличие фильтров.
🔵Легкость интеграции: Простота встраивания в проекты благодаря небольшому размеру библиотеки и ясному API.

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

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

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

Для работы с Excel в коде используется библиотека openpyxl.

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

import openpyxl
from openpyxl.drawing.image import Image

# Открываем существующий файл
wb = openpyxl.load_workbook('example.xlsx')
ws = wb.active

# Загружаем изображение
img = Image('image.jpg')

# Вставляем изображение
ws.add_image(img, 'C1')

# Сохраняем изменения
wb.save('existing_file.xlsx')


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

Модуль cloudscraper представляет собой инструмент для обхода защиты от ботов на веб-сайтах, основанную на технологии Cloudflare.

Cloudflare и подобные службы могут использовать различные методы для защиты от автоматизированных запросов, такие как CAPTCHA или JavaScript-проверки. cloudscraper помогает обходить эти защитные механизмы и получать доступ к защищённым ресурсам программно.

Основные характеристики модуля:
🔵Обход защиты Cloudflare: Основная цель cloudscraper — это обход JavaScript- и CAPTCHA-защит, используемых Cloudflare. Она загружает и выполняет JavaScript на стороне сервера, что позволяет получить необходимую страницу или данные без необходимости ввода CAPTCHA вручную.
🔵Простота использования: Он предоставляет аналогичный API, как и requests, что упрощает переход и использование для тех, кто уже знаком с requests.
🔵Поддержка различных версий Python: Совместим с Python 2.7 и Python 3.x.
🔵Настройка поведения: В модуле есть возможность настройки поведения, включая возможность установки заголовков запросов, использования прокси и других параметров, что делает её гибкой для различных сценариев использования.

❗️Использование модуля cloudscraper или любых других инструментов для сканирования или обхода защиты веб-сайтов должно соответствовать законодательству и политикам использования ресурсов, предоставляемых сайтами.❗️

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

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

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