Python_Scripts
8.22K subscribers
1K photos
5 videos
674 files
1.54K links
Скрипты 💾 на Python 🐍
- боты 🛠
- парсеры📁
- чекеры🔍
- автоматизация🔧
- многое другое💻

Ваши предложения📝 @cmd_dark @CMD_Vega
Download Telegram
🔥 Полезные библиотеки Python

construct

📌 construct — малоизвестная, но крайне мощная библиотека для работы с бинарными протоколами и структурированными данными на уровне байтов. Позволяет объявлять схемы данных декларативно, затем парсить (разбирать) и строить (сериализовать) бинарные форматы без ручного обращения к битам и байтам

📌 Особенности библиотеки:
🟠 Поддержка описания сложных вложенных структур (ethernet → IP → TCP и т.д.)
🟠 Обеспечивает симметрию: схемы для парсинга подходят и для сериализации
🟠 Работает на уровне битов, байтов, с разным порядком следования (big-/little‑endian)
🟠 Благодаря декларативному стилю код проще тестировать и сопровождать
🟠 Идеальна для работы с бинарными сетевыми протоколами, файлами с низкоуровневыми структурами, устройствами и микроконтроллерами


⚙️ Установка:
pip install construct


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥3👍2
📁Bulk Renamer — скрипт, который массово переименовывает файлы в папке по шаблону с префиксом, увеличением номера и фильтрацией по расширению. Основан на простом, но эффективном подходе из GitHub‑Gist, использующем argparse и os.rename() для CLI‑инструмента.

📱 Python 3.7+
💾 Модули: os, argparse (стандартная библиотека)

📌 Bulk Renamer — удобный утилитарный скрипт для переименования нескольких файлов: сортирует файлы, фильтрует по расширению (если указано), а затем переименовывает их в формат префикс + порядковый номер + .ext. Примеры и шаблон перекочевали из популярного gist’а на GitHub.

🧑‍💻 Пример использования:
import os
import argparse

def bulk_rename(directory, prefix, extension=None, start_number=1):
files = sorted(os.listdir(directory))
count = start_number
for file in files:
path = os.path.join(directory, file)
if not os.path.isfile(path):
continue
ext = os.path.splitext(file)[1]
if extension and ext.lower() != extension.lower():
continue
new_name = f"{prefix}{count}{ext}"
os.rename(path, os.path.join(directory, new_name))
print(f"Renamed: {file} → {new_name}")
count += 1

if __name__ == "__main__":
parser = argparse.ArgumentParser(description="Bulk rename files in a directory.")
parser.add_argument("directory", type=str, help="Путь к папке с файлами")
parser.add_argument("prefix", type=str, help="Новый префикс для имен")
parser.add_argument("--extension", type=str, help="Переименовывать только файлы с этим расширением", default=None)
parser.add_argument("--start", type=int, help="Стартовый номер", default=1)
args = parser.parse_args()
bulk_rename(args.directory, args.prefix, args.extension, args.start)


📌 Скрипт:
🟠Сортирует файлы по имени
🟠Фильтрует по расширению, если указан аргумент --extension
🟠Переименовывает в соответствии с шаблоном и увеличивает счётчик
🟠Работает через CLI, без графики — удобно вставить в cron, CI или запускать вручную


#скрипты
🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
114🔥3👍2
🔥 Полезные библиотеки Python

netmiko

📌 netmiko — специализированная библиотека для автоматизации сетевых устройств, построенная поверх Paramiko, но адаптированная под роутеры, свитчи и другие инфраструктурные девайсы. Позволяет запускать команды на устройствах Cisco, Juniper, Arista и мн.др., обеспечивая структурированный вывод и устранение необходимости ручной настройки SSH-сессий.

📌 Особенности библиотеки:
🟠 Поддержка множества производителей (Cisco, Juniper, HP, Arista и др.).
🟠 Автоматическое управление переходами в режимы конфигурирования (например, configure terminal).
🟠 Интеграция с парсинг-системами типа TextFSM и Genie для получения структурированных данных.
🟠 Обработаны нюансы prompt и ожидания — не нужно вручную работать с таймерами.
🟠 Работает через pip install netmiko, легко интегрируется в скрипты и CI/CD пайплайны.


⚙️ Установка:
pip install netmiko


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
5🔥4👍2
🔥 Полезные библиотеки Python

simpy

📌 simpy — это малоизвестный, но мощный фреймворк для дискретного событийного моделирования на Python. Позволяет описывать процессы через генераторы и управлять взаимодействиями объектов (ресурсы, очереди, события) в симулированных системах, таких как транспортные сети, очереди, серверы или многозадачность.

📌 Особенности библиотеки:
🟠 Использует знакомую модель: процессы и окружение (Environment), таймеры timeout, событийное ожидание
🟠 Поддерживает моделирование ресурсов, очередей, приоритетов, ограниченного числа каналов
🟠 Позволяет запускать симуляцию "быстрее реального времени" или с управляемыми шагами
🟠 Полезна для симуляции систем массового обслуживания, сетевых очередей, транспортных потоков, диспетчеризации задач
🟠🟠 Кроссплатформенная, лицензия MIT, активно развивается (последняя версия 4.1.1 — ноябрь 2023)


⚙️ Установка:
pip install simpy


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥93👍3
Dirty-Launderer-main.zip
766.4 KB
📍 Скрипт для защиты конфиденциальности

💻  ЯП:  Python 3.11+🐍
💾  Модули: python-telegram-bot, requests
📂  База данных: -

🚀 Скрипт Telegram-бот, который автоматически очищает URL-адреса от параметров отслеживания и предоставляет альтернативные варианты, обеспечивающие конфиденциальность, через такие сервисы, как Invidious, Nitter, Libreddit и другие.

Особенности:

🧹 Очистка URL : Автоматически удаляет параметры отслеживания (UTM, fbclid и т. д.)
👥 Поддержка групп : работает как в личных чатах, так и в групповых беседах.
⚙️ Настраиваемые параметры : выберите, какие службы и параметры следует очистить
🤫 Нулевое ведение журнала : не сохраняются пользовательские данные или очищенные URL-адреса
🏠 Возможность самостоятельного размещения : запустите собственный экземпляр для максимальной конфиденциальности
🌐 Поддержка нескольких сред : отдельные конфигурации для разработки и производства

📍 Вся информация приведена исключительно в ознакомительных целях❗️❗️❗️

#telegram

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥97👍4
🔥 Полезные библиотеки Python

msgspec

📌 msgspec — высокопроизводительная и малоизвестная библиотека для сериализации и валидации данных. Поддерживает форматы JSON и MessagePack и превосходит стандартные решения (например, json, pydantic) по скорости и удобству, включая двоичные данные и memoryview. Часто используется там, где важен low‑payload, высокая пропускная способность и строгая типизация.

📌 Особенности библиотеки:
🟠 Очень быстрая сериализация/десериализация JSON или MessagePack
🟠 Встроенный механизм msgspec.Struct — легкая альтернатива Pydantic для валидации
🟠 Отличается компактным двоичным представлением (MessagePack)
🟠 Подходит для межпроцессного обмена, сетевого взаимодействия, микросервисов с минимальными накладными расходами


⚙️ Установка:
pip install msgspec


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍3🔥3
🔥 Полезные библиотеки Python

albumentations

📌 albumentations — это высокоскоростная и гибкая библиотека для аугментации изображений, созданная для глубокого обучения и компьютерного зрения. Она предоставляет широкий набор трансформаций, включая случайные обрезки, повороты, изменения яркости и контраста, а также поддержку масок и ключевых точек.

📌 Особенности библиотеки:
🟠Поддержка различных типов данных: изображения, маски, bounding boxes, ключевые точки.
🟠Высокая производительность благодаря использованию OpenCV.
🟠Простота интеграции с другими библиотеками, такими как PyTorch и TensorFlow.
🟠Широкий набор трансформаций с возможностью комбинирования их в пайплайны.


⚙️ Установка:
pip install albumentations


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥5👍4
💬 Auto File Organizer — скрипт на Python, который автоматически сортирует файлы в папке по расширениям, перемещая их в соответствующие подпапки.

📱 Python 3.7+
💾 Модули: os, shutil

📌 Auto File Organizer — простой помощник для автоматической сортировки файлов в одной папке. Например, все .jpg и .png идут в папку "Images", .pdf в "Documents", .mp3 — в "Music" и так далее. Удобно для упорядочивания загрузок или проектов.

👨‍💻 Код:
import os
import shutil

def organize_folder(path):
extensions = {
"Images": [".jpg", ".jpeg", ".png", ".gif"],
"Documents": [".pdf", ".docx", ".txt"],
"Music": [".mp3", ".wav", ".flac"],
"Videos": [".mp4", ".avi", ".mkv"],
}
for filename in os.listdir(path):
filepath = os.path.join(path, filename)
if os.path.isfile(filepath):
for folder, exts in extensions.items():
if any(filename.lower().endswith(ext) for ext in exts):
target_folder = os.path.join(path, folder)
os.makedirs(target_folder, exist_ok=True)
shutil.move(filepath, os.path.join(target_folder, filename))
print(f"Переместил {filename} -> {folder}")
break

if __name__ == "__main__":
organize_folder("C:/Users/user/Downloads")


📌 Что делает:
🟠 Сканирует папку
🟠 Определяет расширение файла
🟠 Перемещает файл в подпапку по типу (создаёт папку, если нужно)


#скрипты

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
110👍5🔥5
UDP Latency Tester — скрипт уровня one-shot, измеряющий задержку по UDP между двумя узлами сети

📱 Python 3.8+
💾 Модули: socket, time, argparse

📌 UDP Latency Tester — лёгкий скрипт в одном файле, который посылает UDP-пакеты на сервер, измеряет одностороннюю задержку (one‑way latency) или round‑trip (RTT) и выводит статистику: min, max, среднее, стандартное отклонение — подходит для диагностики сети, тестирования IoT-устройств или симуляции нестабильных каналов. Позволяет гибко настраивать размер пакетов, частоту отправки и длительность работы.

🧑‍💻 Пример использования (CLI):
# Запуск сервера:
python udp_latency.py --serve --ip 0.0.0.0 --port 9999

# Запуск клиента (one-way latency):
python udp_latency.py --client --ip 192.168.1.10 --port 9999 \
--freq 10 --size 1024 --time 30 --rtt False


📌 Скрипт:
🟠 --serve запускает UDP‑сервер, ловящий пакеты и (для RTT) присылающий ответ
🟠 client подключается к серверу и отправляет UDP‑пакеты указанной частоты (--freq) и размера (--size)
🟠 Собирает и выводит статистику по задержке
🟠 Односторонняя и круговая задержка легко переключаются флагом --rtt


#скрипты

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
10🔥6👍3
🔥 Полезные библиотеки Python

dask

📌 dask — мощная и малоизвестная библиотека для параллельных вычислений в Python. Она расширяет привычные API NumPy, Pandas и scikit-learn, позволяя запускать код на многопоточной системе или в распределённом кластере — без переписывания логики под MapReduce или Spark.

📌 Особенности библиотеки:
🟠 Масштабирование: от одного ядра до всего кластера.
🟠 Совместимый синтаксис: DataFrame, Array, ML API аналогичны знакомым библиотекам.
🟠 Отличается удобством и гибкостью: можно начать с локальных расчётов, а затем перенести тот же код в прод.
🟠 Используется крупными компаниями: Walmart, Nvidia, NASA, Capital One и другими.
🟠 Открытый исходник, активное развитие, последний релиз был в феврале 2024.


⚙️ Установка:
pip install dask[complete]


(пакет с зависимостями для полного функционала — параллельные файловые системы, SQL, ML и др.)

🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍65🔥4
Image Resizer — скрипт, который автоматически изменяет размер всех изображений в указанной папке, сохраняя пропорции. Подходит для подготовки изображений к публикации в соцсетях, на сайте или для уменьшения их размера перед загрузкой.

📱 Python 3.8+
💾 Модули: os, PIL (Pillow), argparse

📌 Image Resizer:
🟠Принимает папку с изображениями
🟠Изменяет размер каждого изображения до заданной ширины, сохраняя пропорции
🟠Сохраняет изменённые изображения в новую папку


📌 Пример кода:
import os
from PIL import Image
import argparse

def resize_images(input_folder, output_folder, width):
os.makedirs(output_folder, exist_ok=True)
for filename in os.listdir(input_folder):
if filename.lower().endswith(('.png', '.jpg', '.jpeg')):
img_path = os.path.join(input_folder, filename)
img = Image.open(img_path)
aspect_ratio = img.height / img.width
height = int(width * aspect_ratio)
resized_img = img.resize((width, height))
resized_img.save(os.path.join(output_folder, filename))
print(f" {filename} resized")
else:
print(f" {filename} is not an image")

if __name__ == '__main__':
parser = argparse.ArgumentParser()
parser.add_argument('input_folder', help='Папка с изображениями')
parser.add_argument('output_folder', help='Папка для сохранения изменённых изображений')
parser.add_argument('width', type=int, help='Ширина изменённых изображений')
args = parser.parse_args()
resize_images(args.input_folder, args.output_folder, args.width)


📌 Установка зависимостей:
pip install pillow


📌 Примечания:
🟠Скрипт сохраняет изменённые изображения в указанную папку
🟠Использует библиотеку Pillow для обработки изображений
🟠Подходит для массовой обработки изображений


#скрипты

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍129🔥5😁1
🔥 Полезные библиотеки Python

rustworkx

📌 rustworkx — высокопроизводительная библиотека для работы с графами в Python, написанная на Rust. Она совместима с API networkx, но обеспечивает значительно лучшую скорость и память при обработке больших графов — идеально для случаев, где NetworkX тормозит.

📌 Особенности библиотеки:
🟠 Быстрые операции с графами (добавление вершин/рёбер, поиск кратчайшего пути, центральности и др.)
🟠 API-поддержка NetworkX, что упрощает миграцию
🟠 Поддерживает взвешенные, ориентированные и неориентированные графы
🟠 Подходит для задач на больших данных: социальные сети, road-сети, алгоритмы графовой оптимизации
🟠 Написана на Rust с безопасностью памяти и отличной производительностью при массовом использовании


⚙️ Установка:
pip install rustworkx


📌 Примечания:
🟠 rustworkx.PyDiGraph() — лёгкий и быстрый граф
🟠 Dijkstra используется из ядра Rust — работает в разы быстрее, чем NetworkX


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍64🔥4
🔥 Полезные библиотеки Python

polars

📌 polars — молниеносная DataFrame‑библиотека на Rust с API для Python, ALTERNATIVE pandas. Она до 5‑10× быстрее и использует меньше памяти, благодаря ленивым вычислениям и параллельному исполнению.

📌 Особенности библиотеки:
🟠Быстрее pandas: анализ показывает, что Polars расходует до 8× меньше ОЗУ и в 5–10× быстрее на типичных задачах .
🟠Ленивые вычисления и оптимизатор запросов, минимизирующий ненужные вычисления .
🟠Поддерживает DataFrame, LazyFrame, выражения, SQL‑подобный синтаксис.
🟠Встроенная многопоточность и низкий расход памяти за счёт Rust-ядра.
🟠Идеальна для ETL, анализа больших наборов данных, обработки CSV/Parquet/JSON, построения пайплайнов NLP/ML.


⚙️ Установка:
pip install polars


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥53👍2🎉1
💬 AI Text Summarizer — скрипт, который принимает текстовый файл, отправляет его в OpenAI API и возвращает краткое резюме. Полезен для быстрого обзора длинных статей, докладов, логов.

📱 Python 3.8+
💾 Модули: openai, argparse, os

📌 AI Text Summarizer:
🟠Принимает путь к .txt файлу
🟠Использует OpenAI Python SDK для вызова модели GPT-3.5/4
🟠Возвращает краткое резюме на основе prompt-инструкции
🟠Подходит для автоматизации обзора документов, email-рассылок, отчетов


🧑‍💻 Пример использования (CLI):
python summarize.py --input article.txt --model gpt-3.5-turbo


👨‍💻 Пример кода:
import os
import openai
import argparse

def summarize_file(input_path, model="gpt-3.5-turbo"):
with open(input_path, 'r', encoding='utf-8') as f:
text = f.read()
openai.api_key = os.getenv("OPENAI_API_KEY")
resp = openai.ChatCompletion.create(
model=model,
messages=[
{"role": "system", "content": "You are a helpful assistant."},
{"role": "user", "content": f"Summarize this text:\n\n{text}"}
]
)
return resp.choices[0].message.content.strip()

if __name__ == "__main__":
p = argparse.ArgumentParser()
p.add_argument("--input", required=True, help="Путь к текстовому файлу")
p.add_argument("--model", default="gpt-3.5-turbo", help="Модель OpenAI")
args = p.parse_args()
summary = summarize_file(args.input, args.model)
print("📄 Summary:\n", summary)


📌 Установка зависимостей:
pip install openai


📌 Примечания:
🟠Требуется переменная окружения OPENAI_API_KEY
🟠Позволяет быстро получать краткое резюме больших текстов
🟠Можно интегрировать в email-ботов, аналитические пайплайны или фоновую обработку документов


#скрипты

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
8🔥4👍3😁2
System Resource Monitor — скрипт, который в режиме реального времени собирает и выводит в терминал использование CPU, памяти, дисков и сетевого трафика. Отлично подходит для контроля ресурсов при нагрузке, мониторинга процессов или быстрой диагностики.

📱 Python 3.8+
💾 Модули: psutil, time, argparse (стандартная библиотека)

📌 System Resource Monitor — лёгкий CLI-инструмент, который следит за ключевыми метриками системы с удобным интервалом обновления. Основан на популярных примерах использования psutil для мониторинга ресурсов.

👨‍💻 Пример использования:
python sys_monitor.py --interval 2  # обновление каждые 2 секунды


🧑‍💻 Код скрипта:
import psutil
import time
import argparse

def human_bytes(n):
for unit in ['B','KB','MB','GB','TB']:
if n < 1024:
return f"{n:.1f}{unit}"
n /= 1024
return f"{n:.1f}PB"

def monitor(interval):
try:
while True:
cpu = psutil.cpu_percent(interval=None)
mem = psutil.virtual_memory()
disk = psutil.disk_usage('/')
net = psutil.net_io_counters()
print(f"CPU: {cpu}% | MEM: {mem.percent}% ({human_bytes(mem.used)}/{human_bytes(mem.total)}) | "
f"Disk: {disk.percent}% | Net: up {human_bytes(net.bytes_sent)} / down {human_bytes(net.bytes_recv)}")
time.sleep(interval)
except KeyboardInterrupt:
print("\n🛑 Monitor stopped.")

if __name__ == "__main__":
p = argparse.ArgumentParser()
p.add_argument('--interval', type=float, default=1.0, help='Interval in seconds')
args = p.parse_args()
monitor(args.interval)


📌 Что делает скрипт:
🟠Считывает нагрузку CPU (cpu_percent)
🟠Получает состояние памяти (virtual_memory)
🟠Собирает usage дисков (disk_usage)
🟠Анализирует сетевой трафик (net_io_counters)
🟠Выводит данные обновляемым прямо в терминале
🟠Легко расширяется и включает перехват Ctrl+C


⚙️ Установка зависимостей:
pip install psutil


📌 Где пригодится:
🟠Быстрый мониторинг серверов и локальной машины
🟠Слежение за утечками памяти или перегрузкой CPU
🟠Инструмент для DevOps, отладки и профилирования кода


#скрипты

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
9👍4🔥3
🔥 Полезные библиотеки Python

shed-skin

📌 shed-skin — экспериментальный транслятор из "узкого" Python (статически типизированного subset) в C++. Он компилирует код на Python 3.8+ в эффективный самодостаточный бинарник или расширение. Отличный инструмент, если нужно ускорить Python‑код без переписывания всего проекта на C++.

📌 Особенности библиотеки:
🟠 Преобразует ограниченный Python (аннотации типов, без dynamic features) в нативный C++
🟠 Ускорение исполнения — особый интерес для вычислительных задач, где важна скорость
🟠 Поддержка около 20 стандартных модулей (random, itertools, re и др.)
🟠 Кроссплатформенность: Linux, macOS, Windows
🟠 Разрешённая лицензия — GPLv3/BSD/MIT, активная разработка: последний релиз был 22 июня 2024


⚙️ Установка:
pip install shed-skin


📌 shed-skin — идеальный, если хочешь ускорить код, оставляя Python‑синтаксис, без глубокого погружения в C/C++.

🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
7🔥5👍4
📝 Локальный переводчик документов и текста (PDF, DOCX, TXT)

📌 Где применимо?
🟠 Перевод технических документов, статей, инструкций
🟠 Работа в оффлайн-средах (военные, научные проекты, закрытые офисы)
🟠 Перевод без утечки данных (без отправки в интернет)
🟠 Автоперевод архивов


🧑‍💻 Код скрипта:
import argostranslate.package, argostranslate.translate
import pdfplumber
import docx2txt
import os

def load_model(from_code="ru", to_code="en"):
installed_languages = argostranslate.translate.get_installed_languages()
from_lang = next(filter(lambda l: l.code == from_code, installed_languages), None)
to_lang = next(filter(lambda l: l.code == to_code, installed_languages), None)
return from_lang.get_translation(to_lang) if from_lang and to_lang else None

def extract_text(file_path):
if file_path.endswith(".pdf"):
with pdfplumber.open(file_path) as pdf:
return "\n".join(page.extract_text() or "" for page in pdf.pages)
elif file_path.endswith(".docx"):
return docx2txt.process(file_path)
elif file_path.endswith(".txt"):
with open(file_path, "r", encoding="utf-8") as f:
return f.read()
else:
raise ValueError("Неподдерживаемый формат")

def save_text(text, out_path):
with open(out_path, "w", encoding="utf-8") as f:
f.write(text)

# Пример использования
file_path = "example_ru.pdf"
out_path = "translated_en.txt"
translation = load_model("ru", "en")
text = extract_text(file_path)
translated = translation.translate(text)
save_text(translated, out_path)
print(f" Перевод сохранён: {out_path}")


#скрипты

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍158
🔥 Полезные библиотеки Python

rpyc

📌 RPyC (Remote Python Call) — это мощная библиотека для удалённого вызова процедур и распределённых вычислений. Она позволяет делать RPC-программы, где клиент и сервер могут вызывать функции друг друга как локальные — без генерации шаблонов, IDL, или сложных настроек.

📌 Особенности библиотеки:
🟠 Симметричность: клиент и сервер могут выступать обе роли, вызывать функции и обмениваться объектами.
🟠 Прозрачность: удалённые функции, классы и объекты выглядят как локальные.
🟠 Поддержка синхронных и асинхронных вызовов (AsyncResult как промисы).
🟠 Исключения передаются по сети как в локальном коде — удобно для отладки.
🟠 Удобна для распределённых Python-приложений, отладочных оболочек, удалённого управления, микросервисов, интерактивных shell-сессий.


⚙️ Установка:
pip install rpyc


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍7🔥42🥰1
📌 Simple TCP Port Scanner — лёгкий и понятный инструмент для проверки открытых TCP‑портов на хосте. Отличный для диагностики, быстрого аудита или начальной разведки.

📱 Python 3.8+
💾 Модули: socket, sys, argparse, datetime (все стандартные)

📌 Simple TCP Port Scanner:
- Спрашивает адрес хоста (IP или домен) и диапазон портов
- Использует socket.connect_ex() для проверки каждого порта
- Печатает список открытых портов и время выполнения
- Основан на примерах с TechTarget и GeeksforGeeks


🧑‍💻 Пример использования (CLI):
python port_scanner.py --host example.com --start 1 --end 1024


👨‍💻 Код скрипта:
import socket
import sys
import argparse
from datetime import datetime

def scan_ports(host, start, end, timeout=0.5):
try:
target = socket.gethostbyname(host)
except socket.gaierror:
print(" Не удалось разрешить хост.")
sys.exit(1)

print(f"=== Сканирование {host} ({target}) портов {start}–{end} ===")
t0 = datetime.now()
open_ports = []

for port in range(start, end + 1):
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
sock.settimeout(timeout)
result = sock.connect_ex((target, port))
if result == 0:
print(f"✔️ Порт {port} открыт")
open_ports.append(port)
sock.close()

t1 = datetime.now()
print(f"=== Сканирование завершено за {t1 - t0} (открыто: {len(open_ports)}) ===")
if open_ports:
print("Открытые порты:", open_ports)

def main():
parser = argparse.ArgumentParser(description="Простой TCP порт-сканнер")
parser.add_argument("--host", required=True, help="IP или хостнейм для сканирования")
parser.add_argument("--start", type=int, default=1, help="Начальный порт")
parser.add_argument("--end", type=int, default=1024, help="Конечный порт")
args = parser.parse_args()
scan_ports(args.host, args.start, args.end)

if __name__ == "__main__":
main()


📌 Скрипт:
- Разрешает домен в IP
- Проверяет диапазон портов методом connect_ex()
- Использует параметр timeout, чтобы не зависать
- Показывает открытые порты и время сканирования


#скрипты

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
7👍4
🔥 Полезные библиотеки Python

cupy

📌 cupy — это высокопроизводительная библиотека для численных вычислений, совместимая с API NumPy, но оптимизированная для работы на GPU (CUDA и AMD ROCm). Она позволяет ускорить операции над массивами в десятки раз без изменения привычного синтаксиса NumPy, идеально подходит для ML, научных вычислений и обработки больших данных.

📌 Особенности библиотеки:
🟠 Поддерживает многомерные массивы, линейную алгебру, FFT и статистику, как в NumPy;
🟠 GPU‑ускорение: подходит для ускорения ML‑подготовки и вычислений;
🟠 Совместимость: безболезненная замена import numpy as np → import cupy as cp;
🟠 Поддержка CUDA и AMD ROCm, активно развивается (версия 13.3.0, август 2024);
🟠 Используется в проектах NVIDIA RAPIDS, Chainer и др..


⚙️ Установка:
pip install cupy


📌 Почему стоит выбрать cupy:
- Используется привычный API NumPy, но ускоряется за счёт GPU;
- Отличный выбор для подготовки данных, вычислений и ML‑задач;
- Значительное ускорение для операций над большими массивами.


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍5🔥43
🔥 Полезные библиотеки Python

sweetviz

📌 sweetviz — это замечательная библиотека для автоматического генерации отчётов по разведочному анализу данных (EDA). Она создаёт интерактивный HTML-файл с визуализациями, сравнениями, статистикой и даже возможностью сравнить тренировочную и тестовую выборки — всё в пару строк кода!

📌 Особенности библиотеки:
🟠 Генерация полного EDA-отчёта одним вызовом (analyze()), включая сводную статистику по всем колонкам;
🟠 Поддержка сравнения двух таблиц — полезно для выявления смещений между train/test;
🟠 Автоматические красивые графики — распределения, зависимости, статистические сравнения;
🟠 Всё хранится в самостоятельном .html — удобно делиться отчётами коллегам.


⚙️ Установка:
pip install sweetviz


🔢 Документация

#библиотеки

🖥 Python_Scripts
Please open Telegram to view this post
VIEW IN TELEGRAM
👍83🔥3