По сути — настоящий швейцарский нож для администратора:
🛡 Фильтрует спам, нежелательные ссылки, упоминания и стоп-слова. Умеет автоматически выдавать предупреждения и банить нарушителей. Главное- устранил нюанс, где можно было редактировать сообщения и после редакции бот не реагировал.
⚙️ Настраивайте стоп-слова, исключения, разрешенные ссылки, триггеры для автоответов и многое другое через админку.
🛡 Устали от спам-ботов? Включите проверку по CAPTCHA для новых участников! Пользователю нужно будет ввести символы в личном чате с ботом, чтобы получить доступ к группе. Функцию можно включать и выключать глобально.
📬 Пользователи могут легко связаться с вами по разным темам (реклама, техподдержка, сотрудничество) или предложить новость для вашего канала.
✍️ Публикуйте посты в свои каналы прямо через бота, с inline-кнопками!
📊 Получайте периодические отчеты о работе бота и статистику модерации.
💰 В боте есть удобное меню для тех, кто захочет поддержать админа и его работу.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤔47🤬25🔥12❤11👍4💯4😱2❤🔥1
Так вот, полный список команд с объяснениями (Linux!!!):
1) Установка и проверка:
# Обновляем список пакетов
sudo apt update
# Устанавливаем Docker
sudo apt install -y docker.io
# Запускаем и добавляем Docker в автозагрузку
sudo systemctl start docker
sudo systemctl enable docker
# Устанавливаем Docker Compose
sudo apt install -y docker-compose
Чтобы проверить, что все сделали четко:
docker --version
docker-compose --version
Должно показать версии Docker и Docker-compose.
2) Разворачивание, запуск контейнера.
После того, как вы установили это все (делать нужно 1 раз(!!!)), нужно перейти в директорию с файлами проекта (где лежат Dockerfile, docker-compose.yml).
Пример:
cd /root/dialog_bot/
После этого, пишите команду:
sudo docker-compose up --build -d
Если сделали все четко, контейнер соберется и сразу же будет в работе.
Вот что делают "флажки":
- up: Создает и запускает контейнеры.
- --build: Принудительно пересобирает образ перед запуском. Это полезно, если ты внес изменения в Dockerfile или файлы проекта.
- -d: Запускает контейнеры в фоновом (detached) режиме.
Просмотреть логи с контейнера после можно по команде:
sudo docker-compose logs -f
3) А что на Windows?
Чтобы запустить на Win 10, 11, нужно:
1. Перейдите на официальный сайт Docker и скачай установщик для Windows.
2. Установите Docker Desktop:
- Запустите скачанный установщик.
- Следуйте инструкциям на экране. Очень важно: убедитесь, что выбрана опция "Use WSL 2 instead of Hyper-V" (Использовать WSL 2 вместо Hyper-V), если она доступна и твой Windows 10 это поддерживает (версия 2004 и выше, сборка 19041 и - выше). WSL 2 обеспечивает лучшую производительность. Если опции нет или твоя система старее, Docker Desktop может использовать Hyper-V.
- Установка может потребовать включения функций "Контейнеры" и "Подсистема Windows для Linux" (WSL). Установщик обычно предлагает сделать это автоматически или дает инструкции.
3. Запусти Docker Desktop после установки. Иконка кита появится в системном трее. При первом запуске может потребоваться некоторое время на инициализацию. Убедись, что Docker Desktop показывает, что он запущен (иконка кита в трее статична и не анимирована).
Важно: каждый раз, когда захотите собрать контейнер на Win 10, 11, нужно запускать Docker Desktop!
Дальше можете прямо в IDE, в папке с проектом в консоли писать:
docker-compose up --build -d
И все. Команды тут те же, что и на Linux.
Полезно?
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰25🤬12👍7❤6🔥3❤🔥1🤷♂1
И главный вопрос:
Что лучше для автоматизации — использовать готовый инструмент типа n8n или писать все с нуля, то есть заниматься ручной разработкой?
n8n — это платформа для визуальной автоматизации. Вы соединяете кубики-«ноды» (приложения и сервисы) между собой, чтобы они обменивались данными и выполняли задачи без вашего участия. Гибко, наглядно и не всегда требует навыков программирования.
Что же выбрать: n8n или код? 🤔
- Скорость — главный приоритет. Собрать рабочий сценарий в n8n можно за минуты, а не за дни или недели;
- Бюджет ограничен. Использование готовых интеграций и визуального конструктора значительно дешевле, чем оплата часов разработчика;
- Задача типовая. Нужно связать популярные сервисы (Telegram, Google Sheets, CRM, Trello)? В n8n для этого уже все готово;
- Нужна гибкость без хардкора. Вы не программист, но хотите иметь возможность легко менять логику процесса.
- Нужна 100% кастомизация. У вас уникальная бизнес-логика, нестандартные API или требования к интерфейсу;
- Требуется максимальная производительность. Для высоконагруженных систем, обрабатывающих тысячи запросов в секунду, кастомный код, написанный под конкретную задачу, будет эффективнее;
- Интеграция очень специфична. Нужно подключить редкий или внутренний корпоративный софт, для которого нет готовых «нод»;
- Полный контроль над кодом и окружением является критически важным в серьезных проектах.
Итог таков: не стоит противопоставлять эти два подхода. Это инструменты для разных задач. Для 60% стандартных кейсов автоматизации n8n будет быстрее, дешевле и проще в поддержке. Например, бот для записи на маникюр, в больницу и т.д.
Для масштабных же проектов, рассчитанных на тысячи пользователей, n8n - это шутка. Где нужна уникальная логика и высокая производительность, — без ручной разработки не обойтись.
#automation #n8n #dev #nocode #tools
Please open Telegram to view this post
VIEW IN TELEGRAM
🤬22🔥10❤6👍1😡1
import qrcode
from PIL import Image
def generate_qr_code(data, filename="qr_code.png"):
qr = qrcode.QRCode(
version=1,
error_correction=qrcode.constants.ERROR_CORRECT_L,
box_size=10,
border=4,
)
qr.add_data(data)
qr.make(fit=True)
img = qr.make_image(fill_color="black", back_color="white")
img.save(filename)
return filename
if __name__ == "__main__":
print("Генератор QR-кодов")
input_data = input("Введите текст или ссылку для кодирования в QR-код: ")
output_filename = input("Введите имя файла для сохранения QR-кода (например, my_qr.png) или нажмите Enter для 'qr_code.png': ")
if not output_filename:
output_filename = "qr_code.png"
elif not output_filename.lower().endswith(('.png', '.jpg', '.jpeg', '.bmp', '.gif')):
output_filename += ".png"
saved_file = generate_qr_code(input_data, output_filename)
print(f"QR-код успешно создан и сохранен как '{saved_file}'")
Ниже зависимости:
pip install qrcode Pillow
Please open Telegram to view this post
VIEW IN TELEGRAM
🥰33🤬16❤6🍌6👍3🤣3❤🔥1🙏1
Camera.rar
16.3 KB
В ТикТоке еще не показывал, сначала решил кинуть сюда. Интересный, как мне кажется, проект, который делает из Вашей веб-камеры камеру видео-наблюдения, которая отправляет уведомления в Телеграм.
Применение придумаете сами. Хочу сюда еще прицепить распознавание лиц. Тогда можно будет цеплять к электронному замку из Али и вешать в подъезде, чтобы открывать двери в квартиру. Но пока так.
В боте через инлайн-кнопки можно включать/выключать мониторинг, а также выбирать режим: фото или видео. Фото делает фото с камеры раз в 30 секунд, если обнаруежает в кадре человека/собаку (у меня есть пес, поэтому прицепил для прикола). Правда, собака распознается по принципу "не человек = пес". Точное определение можно докрутить, если нужно. Видео же пишется с момента, как человек попал в кадр, до момента как вышел. Само собой, распознается количество людей/собак в кадре.
Берите, допиливайте под свои нужды, знакомьтесь :)
Применение придумаете сами. Хочу сюда еще прицепить распознавание лиц. Тогда можно будет цеплять к электронному замку из Али и вешать в подъезде, чтобы открывать двери в квартиру. Но пока так.
В боте через инлайн-кнопки можно включать/выключать мониторинг, а также выбирать режим: фото или видео. Фото делает фото с камеры раз в 30 секунд, если обнаруежает в кадре человека/собаку (у меня есть пес, поэтому прицепил для прикола). Правда, собака распознается по принципу "не человек = пес". Точное определение можно докрутить, если нужно. Видео же пишется с момента, как человек попал в кадр, до момента как вышел. Само собой, распознается количество людей/собак в кадре.
Берите, допиливайте под свои нужды, знакомьтесь :)
👏38🤬19🔥9❤5✍1👍1
Парсить сайты на Selenium уже не считается практичным. Он медленней конкурентов. Единственное преимущество - это большое сообщество, которое делится опытом и поможет найти решение любой проблемы, практически. Но мой опыт показывает, что условный Playwright или DrissionPage быстрее, лучше справляются с задачами, где нужно "маскировать" автоматизацию.
Чем SeleniumBase лучше?
- простой синтаксис;
- встроенная защита от бот-детекторов;
- автоматическое управление драйверами - не нужно вручную скачивать и прописывать пути к chromedriver;
- "умные" ожидания: Скрипт не упадет, если элемент не успел прогрузиться. SeleniumBase автоматически дождется его появления перед тем, как выполнить действие. Это делает парсеры намного стабильнее.
По сути, он упрощает код и помогает обходить защиту там, где обычный Selenium уже не справляется. Вот такой вот опыт.
P.S. жду стул и микрофон, не могу пока ТТ вести, скоро фулл-комбек. Прямо сегодня утром закрыл 3-х заказчиков, сегодня отпишу еще троим. Жизнь продолжается, по чуть продолжаем работу.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤30🤬15🔥5❤🔥4🍌1👾1
Media is too big
VIEW IN TELEGRAM
🚀Сверху обработанное, снизу нет. Но разительную разницу можна заметить при просмотре на ПК.
Если интересно - могу дать исходник и обработанный видос отдельно. 😉 (обработанный видос в 8к получился)
Прошу отметить, что исходник специально брал в максимальном качестве этого аниме.
Что, делаем фулл сезон Берсерка? :D Пока поработаю над оптимизацией скорости, уже лучше, чем вчера.
Буквально можно будет за неделю весь сезон "обновить" для просмотра на 4-8к экранах.
Если интересно - могу дать исходник и обработанный видос отдельно. 😉 (обработанный видос в 8к получился)
Прошу отметить, что исходник специально брал в максимальном качестве этого аниме.
Что, делаем фулл сезон Берсерка? :D Пока поработаю над оптимизацией скорости, уже лучше, чем вчера.
Буквально можно будет за неделю весь сезон "обновить" для просмотра на 4-8к экранах.
❤41👍6🤬4⚡3❤🔥2🔥1👏1🙈1
1️⃣ Код без версий. Файлы «main_final_final_really.py» выглядят забавно, пока не надо откатиться на рабочий вариант. Git спасает нервы и проекты.
2️⃣ «Запустилось - значит работает». Отсутствие юнит-тестов делает рефакторинг лотереей, а баги - постоянными спутниками.
3️⃣ Копипаст без понимания. Стек-Оверфлоу (а сейчас - нейросети) решает задачу моментально, но чужой фрагмент приносит чужие же баги и дыры в безопасности.
4️⃣ Преждевременная оптимизация. Тратить часы на микро-ускорение цикла, не измерив, где реально узкое место, - самый быстрый способ потерять мотивацию.
5️⃣ Игнор читаемости. Завтра «temp2» и «x1» забудете даже вы сами. Говорящие имена и чистые функции - не украшение, а страховка.
6️⃣ Страх вопросов. Сеньоры помнят свои первые commit-ы. Чем раньше спросите, тем меньше технического долга наживёте.
7️⃣ Отсутствие системного обучения. Туториалы вдохновляют, но только книги (частный случай) и доки (всегда!) формируют фундамент и учат думать шире конкретного фреймворка.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤29🤣4🤬3🔥1😁1🤪1😡1
Camera.rar
16.3 KB
В ТикТоке еще не показывал, сначала решил кинуть сюда. Интересный, как мне кажется, проект, который делает из Вашей веб-камеры камеру видео-наблюдения, которая отправляет уведомления в Телеграм.
Применение придумаете сами. Хочу сюда еще прицепить распознавание лиц. Тогда можно будет цеплять к электронному замку из Али и вешать в подъезде, чтобы открывать двери в квартиру. Но пока так.
В боте через инлайн-кнопки можно включать/выключать мониторинг, а также выбирать режим: фото или видео. Фото делает фото с камеры раз в 30 секунд, если обнаруежает в кадре человека/собаку (у меня есть пес, поэтому прицепил для прикола). Правда, собака распознается по принципу "не человек = пес". Точное определение можно докрутить, если нужно. Видео же пишется с момента, как человек попал в кадр, до момента как вышел. Само собой, распознается количество людей/собак в кадре.
Берите, допиливайте под свои нужды, знакомьтесь :)
Применение придумаете сами. Хочу сюда еще прицепить распознавание лиц. Тогда можно будет цеплять к электронному замку из Али и вешать в подъезде, чтобы открывать двери в квартиру. Но пока так.
В боте через инлайн-кнопки можно включать/выключать мониторинг, а также выбирать режим: фото или видео. Фото делает фото с камеры раз в 30 секунд, если обнаруежает в кадре человека/собаку (у меня есть пес, поэтому прицепил для прикола). Правда, собака распознается по принципу "не человек = пес". Точное определение можно докрутить, если нужно. Видео же пишется с момента, как человек попал в кадр, до момента как вышел. Само собой, распознается количество людей/собак в кадре.
Берите, допиливайте под свои нужды, знакомьтесь :)
😡25❤🔥10🤨7❤4🤬4🔥1🥰1💘1
Этот проект предлагает готовое ("Plug & Play") решение для пользователей Windows, столкнувшихся с проблемами доступа к Discord и YouTube. Мои знакомые рекомендовали как лучший обход из имеющихся (и это не реклама, челы)
Что умеет? 🛠
- восстановление доступа к Discord и YouTube;
- не замедляет другие сервисы;
- использование WinDivert для перехвата и фильтрации сетевого трафика, что и позволяет обходить ограничения;
- в комплекте идут .bat файлы для запуска с разными настройками, управления обходом Cloudflare и службами;
- пользователи могут сами расширять списки адресов для обхода, добавляя их в специальные файлы (list-general.txt, list-discord.txt);
На страничке репозитория есть информация по решению частых проблем. Естественно - фулл бесплатно. Автор старается поддерживать актуальность инструмента.
P.S. не знаю, насколько актуально. Вероятно, все кто хотел обойти - уже обошли. Но на всякий.
Please open Telegram to view this post
VIEW IN TELEGRAM
❤31🤬11😨7👍5❤🔥2💔1🍓1💋1
Время на такой 40-секундный ролик, около 2-х минут. То есть, серию Берсерка за час обработать получится. Если у вас по-более VRAM, и карта ПОТУЖНЕЕ, то и результат будет лучше. У меня 2070 Super.
Как вам результат
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
❤56🔥17👍6🤬6🗿2🎉1
🚀 Скоро выложу вам ReelsMaker свой (собранный в .exe), с фикшенными багами, редизайном, возможность качать видосы с YouTube для обработки прямо в программе, поддежкой кодеков для обработки через видеокарты AMD/nVidia.
Также добавлена область предпросмотра, чтобы вы могли видеть, какое видео у вас получится в итоге, со всеми эффектами, обрезками, наложенным баннером и далее.
Обновил и темную, и светлую тему - теперь не колхоз.
Еще будет "частная версия", с авто-постингом по расписанию в YouTube, YT-reels, TikTok.
Также добавлена область предпросмотра, чтобы вы могли видеть, какое видео у вас получится в итоге, со всеми эффектами, обрезками, наложенным баннером и далее.
Обновил и темную, и светлую тему - теперь не колхоз.
Еще будет "частная версия", с авто-постингом по расписанию в YouTube, YT-reels, TikTok.
❤64🔥22👍4🤬4👏2❤🔥1💘1
Так вот, полный список команд с объяснениями (Linux!!!):
1) Установка и проверка:
# Обновляем список пакетов
sudo apt update
# Устанавливаем Docker
sudo apt install -y docker.io
# Запускаем и добавляем Docker в автозагрузку
sudo systemctl start docker
sudo systemctl enable docker
# Устанавливаем Docker Compose
sudo apt install -y docker-compose
Чтобы проверить, что все сделали четко:
docker --version
docker-compose --version
Должно показать версии Docker и Docker-compose.
2) Разворачивание, запуск контейнера.
После того, как вы установили это все (делать нужно 1 раз(!!!)), нужно перейти в директорию с файлами проекта (где лежат Dockerfile, docker-compose.yml).
Пример:
cd /root/dialog_bot/
После этого, пишите команду:
sudo docker-compose up --build -d
Если сделали все четко, контейнер соберется и сразу же будет в работе.
Вот что делают "флажки":
- up: Создает и запускает контейнеры.
- --build: Принудительно пересобирает образ перед запуском. Это полезно, если ты внес изменения в Dockerfile или файлы проекта.
- -d: Запускает контейнеры в фоновом (detached) режиме.
Просмотреть логи с контейнера после можно по команде:
sudo docker-compose logs -f
3) А что на Windows?
Чтобы запустить на Win 10, 11, нужно:
1. Перейдите на официальный сайт Docker и скачай установщик для Windows.
2. Установите Docker Desktop:
- Запустите скачанный установщик.
- Следуйте инструкциям на экране. Очень важно: убедитесь, что выбрана опция "Use WSL 2 instead of Hyper-V" (Использовать WSL 2 вместо Hyper-V), если она доступна и твой Windows 10 это поддерживает (версия 2004 и выше, сборка 19041 и - выше). WSL 2 обеспечивает лучшую производительность. Если опции нет или твоя система старее, Docker Desktop может использовать Hyper-V.
- Установка может потребовать включения функций "Контейнеры" и "Подсистема Windows для Linux" (WSL). Установщик обычно предлагает сделать это автоматически или дает инструкции.
3. Запусти Docker Desktop после установки. Иконка кита появится в системном трее. При первом запуске может потребоваться некоторое время на инициализацию. Убедись, что Docker Desktop показывает, что он запущен (иконка кита в трее статична и не анимирована).
Важно: каждый раз, когда захотите собрать контейнер на Win 10, 11, нужно запускать Docker Desktop!
Дальше можете прямо в IDE, в папке с проектом в консоли писать:
docker-compose up --build -d
И все. Команды тут те же, что и на Linux.
Полезно?
Please open Telegram to view this post
VIEW IN TELEGRAM
💋20🔥10🤬5❤1
Для работы использовал FFMPEG.
Как легкий пример для поста выше.
Как легкий пример для поста выше.
import os
import ffmpeg
class VideoToGifConverter:
def __init__(self, source_dir="video", target_dir="gif", frame_rate=2):
self.source_dir = source_dir
self.target_dir = target_dir
self.frame_rate = frame_rate
os.makedirs(self.source_dir, exist_ok=True)
os.makedirs(self.target_dir, exist_ok=True)
def get_video_files(self):
return [
file_name
for file_name in os.listdir(self.source_dir)
if file_name.lower().endswith(".mp4")
]
def convert_videos_to_gif(self):
video_files = self.get_video_files()
for video_file in video_files:
base_name = os.path.splitext(video_file)[0]
gif_file_name = base_name + ".gif"
input_path = os.path.join(self.source_dir, video_file)
output_path = os.path.join(self.target_dir, gif_file_name)
stream = ffmpeg.input(input_path)
stream = stream.filter("fps", fps=self.frame_rate)
stream = ffmpeg.output(stream, output_path)
ffmpeg.run(stream)
def main():
converter = VideoToGifConverter(source_dir="video", target_dir="gif", frame_rate=2)
converter.convert_videos_to_gif()
if __name__ == "__main__":
main()
❤14🤬9😁2👍1
- авто-комент новых видео на указанных каналах;
- учитывается контекст видео, т.к. производится его загрузка и транскрибация;
- учитывается пользовательский промпт - можно рекламировать что угодно;
- мульти-аккаунт;
- поддержка прокси.
P.S. сегодня делаем стрим с отбором заявок, чи шо?
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥35❤9🥰3🤬2
1) Поможет скачать последнюю актуальную версию IDE под ОС пользователя;
2) А также Python из последних актуальных релизов.
Будут и рекомендации по правильной установке.
Страничку с choco я еще заполню командами. Сейчас там уже есть вкладки (медиа, разработка, веб-разработка и т.д.) с командами для экспресс-установки рабочих инструментов. В одну строчку можно установить все те же IDE, Python, Node JS, драйвера, кодеки и даже Steam :D
Пока что так. .exe под Windows мб дам сюда сегодня-завтра.
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
🤬20👍13🥰8❤4🫡2❤🔥1🔥1🤣1