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

Ваши предложения📝 @cmd_dark @CMD_Vega
Download Telegram
📍 Индексация PDF-файлов и интеллектуальный поиск по ним (PDF → база знаний)📱

📍Где применимо?

База знаний юридических, технических или научных документов
Быстрый поиск по нормативке, договорам, архивам
Создание интеллектуального справочника
Помощь в исследовательской или аудиторской работе
import os
from PyPDF2 import PdfReader
from whoosh.index import create_in
from whoosh.fields import Schema, TEXT, ID
from whoosh.qparser import QueryParser
from rich.console import Console
from rich.markdown import Markdown

# Шаг 1: создание индекса
schema = Schema(title=ID(stored=True), content=TEXT)
os.makedirs("index", exist_ok=True)
ix = create_in("index", schema)
writer = ix.writer()

# Шаг 2: загрузка PDF и индексация
for file in os.listdir("pdfs"):
if file.endswith(".pdf"):
path = os.path.join("pdfs", file)
reader = PdfReader(path)
full_text = "\n".join(page.extract_text() or "" for page in reader.pages)
writer.add_document(title=file, content=full_text)

writer.commit()
print(" Все PDF проиндексированы.")

# Шаг 3: Поиск
console = Console()
with ix.searcher() as searcher:
query_str = input("🔎 Поиск: ")
parser = QueryParser("content", schema=ix.schema)
query = parser.parse(query_str)
results = searcher.search(query, limit=5)

if results:
for hit in results:
console.rule(f"[green]Документ: {hit['title']}")
snippet = hit.highlights("content", top=3)
console.print(Markdown(snippet))
else:
print("😕 Ничего не найдено.")

📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍134🔥3
🚀 Полезные библиотеки Python 🐍

💾  PyWinCtl

📍 Библиотека Python, для управления окнами: перемещение, активация, разворачивание, скрытие, получение заголовков и размеров окон.

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

🪟 Отличная альтернатива AutoHotkey, но на Python
🔥 Идеальна для UI-роботов, автоматизации рутинных действий
🧠 Совместима с Linux (через wmctrl) и macOS (через AppleScript)
🎯 Очень проста в использовании и расширении

⚙️ Установка 👇👇👇

pip install PyWinCtl


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

#библиотеки

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍93🔥1
CarTaxBot-main.zip
45.4 KB
📍 Скрипт таможенный калькулятор

💻  ЯП:  Python 3.11+🐍
💾  Модули: aiogram,django, requests
📂  База данных: sqlalchemy

🚀 Скрипт - калькулятор, представлен в виде Telegram-бота и административной панели Django и предназначен для вычисления таможенных платежей при ввозе автомобилей в РФ из-за границы.

Бот также позволяет оставить заявку для связи клиента и менеджера и уточнения деталей.

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

#telegram

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
6👍3
📍 Локальный бэкап-менеджер с версионированием и логами📱

📍Где применимо?

Резервное копирование проектов, конфигураций, скриптов
Защита от случайного удаления или порчи файлов
Работа в команде без Git — просто по времени
Умная альтернатива облачному бэкапу
import os
import shutil
from datetime import datetime
from rich import print

SOURCE_DIR = "my_project"
BACKUP_DIR = "backups"
MAX_VERSIONS = 5

os.makedirs(BACKUP_DIR, exist_ok=True)

def create_backup():
timestamp = datetime.now().strftime("%Y%m%d_%H%M%S")
backup_path = os.path.join(BACKUP_DIR, f"{SOURCE_DIR}_{timestamp}")
shutil.copytree(SOURCE_DIR, backup_path)
print(f"[green] Бэкап создан:[/green] {backup_path}")
manage_versions()

def manage_versions():
versions = sorted(os.listdir(BACKUP_DIR))
if len(versions) > MAX_VERSIONS:
to_delete = versions[:-MAX_VERSIONS]
for old in to_delete:
shutil.rmtree(os.path.join(BACKUP_DIR, old))
print(f"[yellow]🗑️ Удалена старая копия:[/yellow] {old}")

create_backup()

📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍102
🚀 Полезные библиотеки Python 🐍

💾  Rich-pixels

📍 Библиотека Python, дополнение к rich, позволяющее выводить изображения (PNG, JPEG и др.) прямо в терминале, в цвете и с учётом разрешения терминала. Работает даже по SSH!

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

🖼 Делает терминал «живым» — графика прямо в TUI
🔥 Отлично для визуальных CLI, ассистентов, простых игр, отладчиков
🎯 Удобно в ssh-сессиях, где нет GUI
🧠 Подходит для визуального вывода данных, QR-кодов, значков
⚙️ Установка 👇👇👇

pip install rich-pixels


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

#библиотеки

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍154🤩2
pyMediaManager-main.zip
20.2 MB
📍 Скрипт менеджер торрент клиентов и трекеров

💻  ЯП:  Python 3.11+🐍
💾  Модули: django, bs4, requests
📂  База данных: postgresql

🚀 Скрипт менеджер торрент клиентов и трекеров. Django-приложение(web-сайт) написанное на python. Отслеживает темы(kinozal.tv, rutracker, lostfilm.tv) отправляет обновленные торренты через api qbittorrent и uTorrent. Управление через web, автоматически через cron и rss feed

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

#web

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥103
📍 Реакция на события ОС — автозапуск скриптов при изменении файлов, подключении дисков, появлении процессов📱

📍Где применимо?

Мониторинг входящих файлов (чеков, сканов, логов)
Триггеры: загрузка видео → автообработка
Обработка данных без ручного запуска
Слежение за изменениями в проектах, синхронизация
from watchdog.observers import Observer
from watchdog.events import FileSystemEventHandler
import time
import os

WATCH_DIR = "watched"

class Handler(FileSystemEventHandler):
def on_created(self, event):
if not event.is_directory:
print(f"📥 Новый файл: {event.src_path}")
# Пример: обработать файл или переместить
# process_file(event.src_path)

def on_modified(self, event):
if not event.is_directory:
print(f"✏️ Файл изменён: {event.src_path}")

def on_deleted(self, event):
if not event.is_directory:
print(f"🗑️ Файл удалён: {event.src_path}")

os.makedirs(WATCH_DIR, exist_ok=True)
observer = Observer()
observer.schedule(Handler(), WATCH_DIR, recursive=True)
observer.start()

print(f"🕵️ Слежение за: {WATCH_DIR}")
try:
while True:
time.sleep(1)
except KeyboardInterrupt:
observer.stop()
observer.join()

📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍143
🚀 Полезные библиотеки Python 🐍

💾  Redbaron

📍 Библиотека Python, обёртка над baron, предоставляющая легкий способ парсить, анализировать и модифицировать Python-код как структуру, но с сохранением форматирования, отступов и комментариев.

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

🧠 Позволяет работать с кодом как с данными
✍️ Идеально для автогенерации, форматирования, анализа, linting'а
🛠 Используется в проектах для автоматической модификации кода
🎯 Сохраняет структуру, отступы, даже комментарии — что не делает обычный ast

⚙️ Установка 👇👇👇

pip install redbaron


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

#библиотеки

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍73🤩2
forms-test-task-main.zip
8.2 KB
📍 Скрипт Web-приложение для определения заполненных форм

💻  ЯП:  Python 3.11+🐍
💾  Модули: flask
📂  База данных: tinydb

🚀 Скрипт web-приложение предназначенное для определения соответствия заполненных форм шаблонам форм в базе данных. Если совпадение найдено, возвращается имя соответствующего шаблона. В противном случае производится динамическая типизация полей и возвращается список полей с их типами.

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

#web

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍81
📍 Обнаружение аномалий во временных рядах (в логах, продажах, метриках)📱

📍Где применимо?

Мониторинг систем и серверов (скачки CPU, RAM, latency)
Выявление подозрительных транзакций или событий
Проверка корректности данных перед загрузкой в БД
Базовая система алертов в офлайн-режиме
import pandas as pd
import matplotlib.pyplot as plt
from scipy.stats import zscore

# Загрузка данных (CSV с колонками: дата, значение)
df = pd.read_csv("data.csv", parse_dates=["date"])
df["z"] = zscore(df["value"])

# Флаг аномалии, если Z-score больше 3 или меньше -3
df["anomaly"] = df["z"].abs() > 3

# Визуализация
plt.figure(figsize=(12, 5))
plt.plot(df["date"], df["value"], label="Значение")
plt.scatter(df[df["anomaly"]]["date"], df[df["anomaly"]]["value"], color="red", label="Аномалия")
plt.legend()
plt.title("Обнаружение аномалий")
plt.grid()
plt.tight_layout()
plt.show()

📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍152
🚀 Полезные библиотеки Python 🐍

💾  Pydom

📍 Библиотека Python, которая позволяет редактировать, модифицировать и навигировать по HTML-документу в Python в стиле document.querySelector, как в браузере. Полезна для генерации и правки HTML без шаблонов.

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

🧱 Позволяет работать с HTML как с деревом, не как со строкой
💡 Упрощает генерацию писем, страниц, встроенных виджетов
🚀 Подходит для генерации HTML в отчётах, CMS, почтовых шаблонах
🎯 Очень похож на jQuery — минимальный порог входа

⚙️ Установка 👇👇👇

pip install pydom


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

#библиотеки

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍6🔥5😁21
helpik-main.zip
5.9 KB
📍 Скрипт диетолог

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

🚀 Скрипт Telegram бот , который помогает отслеживать приемы пищи, расщитывать КБЖУ, фиксирует результаты в Google таблицы.

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

#telegram

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍112😁2
📍 Анализ лицензий зависимостей Python-проекта (лицензии pip-пакетов)📱

📍Где применимо?

Подготовка проекта к продаже, лицензированию, публикации
Аудит Open Source-соответствия
Безопасная разработка в компаниях с юридическими требованиями
Создание SPDX-отчётов и документации

from piplicenses import create_output_string

output = create_output_string(
from_=("mixed",),
format="markdown",
with_authors=True,
with_urls=True,
)

print(output)

📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍111
🚀 Полезные библиотеки Python 🐍

💾  Sanic

📍 Библиотека Python, для создания REST API и веб-приложений, написанная с упором на скорость и асинхронность.

Она быстрее Flask, поддерживает async/await, и идеально подходит для микросервисов.

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

Асинхронная и реально быстрая
🔥 Удобная как Flask, но мощная как FastAPI
🧠 Простой старт, но гибкая архитектура
🎯 Подходит и для прототипов, и для продакшн-сервисов

⚙️ Установка 👇👇👇

pip install sanic


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

#библиотеки

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍15🔥4🥰1
FileStoreBot-main.zip
40.5 KB
📍 Скрипт файлообменник/хранилище

💻  ЯП:  Python 3.11+🐍
💾  Модули: pyrogram
📂  База данных: mongoDB

🚀 Скрипт сверхбыстрый и мощный бот Telegram, предназначенный для хранения файлов, управления доступом пользователей, инструментов администрирования и полной настройки — все через пользовательский интерфейс Telegram.

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

📦 Развертывание нескольких ботов;
📨 Неограниченная принудительная подписка;
⚙️ Элементы управления администратора;
🖼️ Медиафайлы для запуска и принудительной подписки;
🛡️ Защита и автоматическое удаление контента;
💬 Полностью редактируемые сообщения;
🚫 Бан/разбан пользователей;

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

#telegram

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥17
📍 Авто-генерация командной строки для работы с SQLite (таблицы, SELECT, INSERT, фильтры)📱

📍Где применимо?

Быстрый доступ к данным без UI
Локальные проекты, аналитика, скрипты обработки
Упрощённый "терминал" для админов и менеджеров
Создание MVP админки без Django/Flask
import sqlite3
import typer
from tabulate import tabulate

app = typer.Typer()
DB_PATH = "mydata.db"

def get_connection():
return sqlite3.connect(DB_PATH)

@app.command()
def list_tables():
"""Показать все таблицы в базе"""
conn = get_connection()
cur = conn.cursor()
cur.execute("SELECT name FROM sqlite_master WHERE type='table';")
tables = cur.fetchall()
typer.echo("📦 Таблицы:\n" + "\n".join(t[0] for t in tables))

@app.command()
def show(table: str, limit: int = 10):
"""Показать записи из таблицы"""
conn = get_connection()
cur = conn.cursor()
cur.execute(f"SELECT * FROM {table} LIMIT ?", (limit,))
rows = cur.fetchall()
columns = [desc[0] for desc in cur.description]
typer.echo(tabulate(rows, headers=columns, tablefmt="grid"))

@app.command()
def insert(table: str, values: str):
"""Добавить строку в таблицу (формат: '1,John,25')"""
conn = get_connection()
cur = conn.cursor()
vals = [v.strip() for v in values.split(",")]
placeholders = ",".join("?" for _ in vals)
cur.execute(f"INSERT INTO {table} VALUES ({placeholders})", vals)
conn.commit()
typer.echo(" Запись добавлена")

if __name__ == "__main__":
app()

📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍84
🚀 Полезные библиотеки Python 🐍

💾  ConfZ

📍 Библиотека Python, которая позволяет загружать, валидировать и объединять конфигурации из разных источников (YAML, JSON, переменные среды и т.п.) с полной поддержкой автодополнения, аннотаций и валидации.

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

⚙️ Полная поддержка типизации и аннотаций
📁 Объединение конфигов из разных мест — без дублирования
🛡 Защита от случайных ошибок конфигурации
🎯 Отлично работает в продакшене, CI/CD, API и ML
⚙️ Установка 👇👇👇

pip install confz


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

#библиотеки

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥6👍3
Telegram-Bot-User-Manager-main.zip
122.7 KB
📍 Скрипт шаблон для регистрации пользователей

💻  ЯП:  Python 3.11+🐍
💾  Модули: aiogram
📂  База данных: sqlite3

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

Возможности:

- Регистрация пользователя через Telegram

- Список всех зарегистрированных пользователей

- Обновление данных пользователя

- Удаление пользователя

- FSM (машина состояний) для пошагового ввода

- Логирование в файл

- Хранение данных

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

#telegram

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍93
📍 Визуальный граф истории Git-коммитов с авторами, ветками и связями📱

📍Где применимо?

Визуальный анализ чужих репозиториев
Отчёты о ходе разработки
Учебные проекты по Git
Разбор причин merge-конфликтов

import git
from graphviz import Digraph

repo = git.Repo(".") # текущий git-репозиторий
dot = Digraph(comment="Git History")

commits = list(repo.iter_commits("main", max_count=50))

for commit in commits:
short = commit.hexsha[:7]
label = f"{short}\n{commit.author.name}\n{commit.committed_datetime.strftime('%Y-%m-%d')}"
dot.node(short, label)

for parent in commit.parents:
dot.edge(parent.hexsha[:7], commit.hexsha[:7])

dot.render("git_history", format="png", cleanup=True)
print(" История сохранена как git_history.png")

📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
👍61🔥1
🚀 Полезные библиотеки Python 🐍

💾  DVC

📍 Библиотека Python и инструмент для отслеживания версий данных, моделей и пайплайнов. Он интегрируется с Git, позволяя управлять не только кодом, но и большими файлами, датасетами и результатами обучения.

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

📦 Делает данные и модели такими же «контролируемыми», как код
🚀 Облегчает совместную работу в команде и воспроизводимость экспериментов
🧠 Позволяет выстраивать гибкие пайплайны без лишнего кода
🎯 Работает в реальных ML-проектах, на проде, в исследованиях

⚙️ Установка 👇👇👇

pip install dvc


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

#библиотеки

📍 Подпишись 📱 Python_Scripts❗️
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥8👍2