Please open Telegram to view this post
VIEW IN TELEGRAM
👍21🔥6❤3
Python + пара библиотек — и ты уже можешь записывать звук с микрофона прямо в .wav файл. Всё просто:
sounddevice
— захват аудиоscipy
— для сохранения .wav файловpython
import sounddevice as sd
from scipy.io.wavfile import write
def record_voice(duration: int, filename: str = "recording.wav", sample_rate: int = 44100) -> None:
"""
Записывает звук с микрофона и сохраняет его в .wav файл.
:param duration: Время записи в секундах
:param filename: Название выходного файла
:param sample_rate: Частота дискретизации (по умолчанию 44100 Гц)
"""
print(f"🎙 Запись началась на {duration} секунд...")
audio_data = sd.rec(int(duration * sample_rate), samplerate=sample_rate, channels=2)
sd.wait()
write(filename, sample_rate, audio_data)
print(f"✅ Запись завершена. Файл сохранён как: {filename}")
if __name__ == "__main__":
try:
seconds = int(input("⏱️ Введите длительность записи в секундах: "))
record_voice(seconds)
except Exception as e:
print(f"❌ Ошибка: {e}")
Такой скрипт отлично подойдёт для проектов по обработке аудио, голосовым ассистентам или даже создания простого диктофона.
#python #code #soft
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45🔥14❤10
Это проще, чем кажется — достаточно библиотеки translate.
pip install translate
from translate import Translator
def translate_text(text: str, source_lang: str, target_lang: str) -> str:
"""
Переводит текст с одного языка на другой.
:param text: Текст для перевода.
:param source_lang: Язык оригинала (например, "Russian").
:param target_lang: Язык перевода (например, "English").
:return: Переведённый текст.
"""
translator = Translator(from_lang=source_lang, to_lang=target_lang)
return translator.translate(text)
# Пример использования
if __name__ == "__main__":
result = translate_text("Привет мой друг", "Russian", "English")
print(result)
# Hello my friend
Сохраняй, пригодится для практики
#python #code #tipsandtricks
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45🔥12❤6
This media is not supported in your browser
VIEW IN TELEGRAM
Сайт, где собрана куча готовых примеров приложений и сайтов, сгенерированных ИИ.
Фишка в том, что под каждым проектом лежит промпт — просто копируешь, кидаешь в чат-бот, и через пару минут у тебя готовый код.
#soft #code
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥43👍13❤7
Инструмент, который берёт под контроль мышь и клавиатуру.
Несколько строк кода заставят твой ПК кликать, печатать, двигать курсор и даже искать картинки на экране.
Где использовать?
Фишки:
pip install pyautogui
Простой пример, как сделать скриншот экрана:
python
import pyautogui
im1 = pyautogui.screenshot()
im2 = pyautogui.screenshot('my_screenshot.png')
Автоматизируй ПК и освободи время для реально важных задач!
#python #soft #code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍59❤13🔥9🤯5
Код готового Telegram-бота, который сам раздаёт капчу новичкам и не пускает в группу спамеров.
Что умеет:
С ростом числа спам-ботов в Telegram, особенно в крупных группах, наличие надежной системы верификации становится критически важным. Подобные боты предоставляют простое и эффективное решение для этой проблемы.
#python #soft #code #github
Please open Telegram to view this post
VIEW IN TELEGRAM
👍37❤11🔥9🤯3
Как можно определить географическое местоположение объекта на фотографии, используя только длину тени и время съёмки. Разбираем на конкретном примере.
#python #soft #code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31🔥16❤3🤯1😱1
[PYTHON:TODAY]
Please open Telegram to view this post
VIEW IN TELEGRAM
👍27🔥14🤯3❤2
Когда нужно собрать фотки, скриншоты или диаграммы в один файл — забудь про ручное копирование.
Python решает задачу в несколько строк кода: просто передай список изображений, и на выходе получишь аккуратный PDF.
from fpdf import FPDF
from pathlib import Path
from typing import List
def images_to_pdf(images: List[str], output: str = "output.pdf") -> None:
"""
Конвертирует список изображений в единый PDF-файл.
:param images: список путей к изображениям (JPG, PNG и т.д.)
:param output: имя выходного PDF-файла
"""
pdf = FPDF()
for img_path in images:
if not Path(img_path).exists():
print(f"⚠️ Файл не найден: {img_path}")
continue
pdf.add_page()
pdf.image(img_path, x=10, y=10, w=180) # подгоняем ширину под страницу
pdf.output(output)
print(f"✅ PDF создан: {output}")
if __name__ == "__main__":
# Пример использования
images_to_pdf(
["image1.jpg", "image2.png", "image3.jpg"],
"images_collection.pdf"
)
Что умеет скрипт:
#python #soft #code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍45❤12🔥10
Хочешь превратить ноутбук в мини‑студию?
Чистый скрипт на OpenCV, который:
from dataclasses import dataclass
from pathlib import Path
from typing import Tuple, Optional
import cv2
@dataclass(frozen=True)
class CaptureConfig:
"""Настройки захвата видео с веб‑камеры."""
device_index: int = 0 # индекс камеры (0 — встроенная)
width: int = 640 # ширина кадра
height: int = 480 # высота кадра
fps: int = 20 # кадров в секунду
fourcc: str = "mp4v" # кодек для MP4: mp4v, для AVI: XVID
def create_capture(cfg: CaptureConfig) -> cv2.VideoCapture:
"""Создаёт и настраивает объект VideoCapture."""
cap = cv2.VideoCapture(cfg.device_index)
if not cap.isOpened():
raise RuntimeError("Не удалось открыть веб‑камеру")
cap.set(cv2.CAP_PROP_FRAME_WIDTH, cfg.width)
cap.set(cv2.CAP_PROP_FRAME_HEIGHT, cfg.height)
cap.set(cv2.CAP_PROP_FPS, cfg.fps)
return cap
def create_writer(output_path: Path, cfg: CaptureConfig) -> cv2.VideoWriter:
"""Создаёт объект записи видео (VideoWriter)."""
output_path.parent.mkdir(parents=True, exist_ok=True)
fourcc = cv2.VideoWriter_fourcc(*cfg.fourcc)
writer = cv2.VideoWriter(str(output_path), fourcc, cfg.fps, (cfg.width, cfg.height))
if not writer.isOpened():
raise RuntimeError(f"Не удалось создать файл для записи: {output_path}")
return writer
def record_from_webcam(
output_path: Path,
cfg: CaptureConfig = CaptureConfig(),
window_title: str = "Video",
) -> Tuple[bool, Optional[str]]:
"""
Захватывает поток с веб‑камеры, показывает превью и пишет в файл.
Возвращает (успех, сообщение_ошибки).
Остановка по клавише 'q'.
"""
try:
cap = create_capture(cfg)
writer = create_writer(output_path, cfg)
except Exception as e:
return False, str(e)
try:
while True:
ok, frame = cap.read()
if not ok:
return False, "Не удалось прочитать кадр с камеры"
writer.write(frame)
cv2.imshow(window_title, frame)
# выход по 'q'
if cv2.waitKey(1) & 0xFF == ord("q"):
break
return True, None
finally:
cap.release()
writer.release()
cv2.destroyAllWindows()
def main() -> None:
cfg = CaptureConfig(
device_index=0,
width=640,
height=480,
fps=20,
fourcc="mp4v", # для .mp4; можно 'XVID' для .avi
)
ok, err = record_from_webcam(Path("records/vid.mp4"), cfg)
if ok:
print("✅ Запись завершена. Файл: records/vid.mp4")
else:
print(f"❌ Ошибка: {err}")
if __name__ == "__main__":
main()
Код структурирован на функции, есть @dataclass для настроек — бери, редактируй и встраивай в свой проект.
pip install opencv-python
records/vid.mp4
Сохраняй, пригодится!
#python #soft #code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍31❤14🔥13
Представь: сотни сообщений в WhatsApp, лайки и подписки в *Instagram, работающий Telegram-бот, письма с вложениями и даже обработка PDF — и всё это делает не ты, а твой код.
Что ты сможешь:
* Принадлежит корпорации Meta, которая признана в РФ экстремистской.
Это твой шанс освободить время, повысить продуктивность и даже зарабатывать, создавая авто-сценарии для клиентов.
Сохраняй, пригодится!
#python #doc #code
Please open Telegram to view this post
VIEW IN TELEGRAM
1👍50❤16🔥9🤯1
Надоело вручную вытаскивать текст и данные из PDF, Word или сканов? Теперь это можно делать в один вызов API.
Что умеет:
Технические фишки:
CLI:
# Извлечь текст
uvx kreuzberg extract document.pdf > output.txt
# OCR + таблицы
uvx --from "kreuzberg[all]" kreuzberg extract invoice.pdf --ocr-backend tesseract --output-format text
Python (async):
from kreuzberg import extract_file
result = await extract_file("presentation.pptx")
print(result.content)
print(result.metadata.title, result.metadata.author)
Подходит для:
#python #soft #code #github
Please open Telegram to view this post
VIEW IN TELEGRAM
👍43🔥29❤10
Deep-Live-Cam — Python утилита для создания дипфейков в реальном времени даже на слабом ПК.
Установка простая, а для работы нужна всего одна фотография.
#python #soft #code
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍58🔥19❤4
Парсер Google изображений — работает аккуратно: кастомный User-Agent, задержки, сохранение расширения по Content-Type.
Несколько строк кода — и у тебя уже папка с десятками картинок по любому запросу: котики, машины, мемы или даже датасет для нейросети.
pip install requests beautifulsoup4
python google_images_mini.py
Код:
import os, re, time, pathlib, requests
from bs4 import BeautifulSoup
from typing import List
UA = ("Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 "
"(KHTML, like Gecko) Chrome/124.0 Safari/537.36")
def slug(s: str) -> str:
return re.sub(r"[^a-zA-Z0-9а-яА-Я_]+", "_", s).strip("_")[:50] or "item"
def google_image_urls(query: str, limit: int = 10) -> List[str]:
url = "https://www.google.com/search"
params = {"q": query, "tbm": "isch", "hl": "ru"}
r = requests.get(url, params=params, headers={"User-Agent": UA}, timeout=15)
r.raise_for_status()
soup = BeautifulSoup(r.text, "html.parser")
out: List[str] = []
for img in soup.select("img"):
if len(out) >= limit: break
src = img.get("data-iurl") or img.get("data-src") or img.get("src")
if not src or src.startswith("data:"): continue
if "gstatic.com" in src and "encrypted" in src: continue # миниатюры
if src.startswith("http"): out.append(src)
return out
def download(urls: List[str], folder: str, name: str) -> None:
pathlib.Path(folder).mkdir(parents=True, exist_ok=True)
for i, u in enumerate(urls, 1):
try:
r = requests.get(u, headers={"User-Agent": UA}, timeout=20)
if r.status_code != 200: raise RuntimeError(f"HTTP {r.status_code}")
ext = (r.headers.get("Content-Type","").split(";")[0].split("/")[-1] or "jpg")
ext = ("jpg" if ext == "jpeg" else ext)
path = os.path.join(folder, f"{name}_{i:02d}.{ext}")
with open(path, "wb") as f: f.write(r.content)
print(f"✅ {path}")
time.sleep(0.3) # чуть-чуть вежливости
except Exception as e:
print(f"⚠️ пропуск: {u} — {e}")
def download_google_images(query: str, limit: int = 10, folder: str = "images") -> None:
name = slug(query)
urls = google_image_urls(query, limit)
if not urls:
print("Ничего не нашёл. Попробуй другой запрос.")
return
download(urls, os.path.join(folder, name), name)
if __name__ == "__main__":
# пример: меняй запрос и лимит по вкусу
download_google_images("cats 4k", limit=5)
Скрипт:
Отличный лайфхак, если нужно быстро собрать датасет или загрузить тонны изображений без ручного копипаста.
Сохраняй, пригодится!
#python #soft #code
Please open Telegram to view this post
VIEW IN TELEGRAM
👍47🔥18❤12
MetadataParser — Python-библиотека, которая вытащит всё о сайте по одной ссылке!
Устанавливается в один клик:
pip install metadata_parser
#python #soft #code #github
Please open Telegram to view this post
VIEW IN TELEGRAM
👍32🔥12❤5