Pull to refresh
6
-1
Михаил Мариков@MarkovM

User

Send message

Ежедневный отчёт по Telegram-каналу без шаманства с crontab

Reading time8 min
Reach and readers7.4K

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

Очевидный путь - автоматизировать все самому: поднять VPS, поставить туда Python, написать скрипт, настроить crontab, следить за работой и молиться, что все будет работать без ошибок. Ради одного короткого задания раз в день это выглядит избыточно, приходится платить за целую виртуалку и тратить время на настройку.

В этой статье я покажу, как сделать проще: собрать небольшой Python-скрипт, который раз в день отправляет вам в Telegram краткий отчет по каналу: количество постов, просмотры, репосты, реакции, самые популярные реакции и топ-посты за указанный вами период без необходимости постоянной аренды VPS.

Читать далее

Внешний мониторинг доступности IT-приложений

Reading time6 min
Reach and readers5.9K

Всем привет! Иногда внутренний мониторинг не даёт полной картины, что все работает как надо. И полезно сделать внешний пинг и посмотреть, действительно ли нужный проект доступен.

Сегодня мы расскажем, как решали эту задачу для себя, и выложим код в Open Source, который вы сможете применить для простого мониторинга своих проектов. И да, мы знаем про существование специализированных сервисов для решения этой задачи, но всегда веселее написать свой скрипт.

Читать далее

Настройка VPS своими руками: Docker + Nginx + SSL

Reading time8 min
Reach and readers13K

Всем привет! Часто требуется поднять свой проект на VPS/VDS. Именно это я и покажу в статье.

Мы настроем сервер, NGINX, выпишем SSL-сертификат и развернём код тестового приложения.

Читать далее

Бэкап PostgreSQL на независимый сервер по расписанию

Reading time6 min
Reach and readers9.6K

Потеря данных, одно из самых неприятных происшествий. В статье я дам инструкцию, как сохранять дампы PostgreSQL на независимый сервер.

Мы разберём как подключиться к СУБД PostgreSQL, снять дамп с помощью pg_dump, сохранить его в стороннее облако, отправить статус в сообщении в Telegram с информацией о последнем бэкапе и сделать все это без лишних трат.

Читать далее

Подключаем нейронки в n8n без иностранной карты

Reading time4 min
Reach and readers11K

Сегодня многие AI-сервисы требуют наличия иностранной банковской карты или работы через зарубежные платёжные системы. Это создаёт сложности для разработчиков из стран с региональными ограничениями.

В этой статье я покажу, как подключить нейросеть (инференс GPT 5 и LLaMA) в n8n без использования иностранной карты, и разберу работу с ней на простом примере.

Читать далее

Пишем свою ноду в n8n под любой API за вечер

Reading time8 min
Reach and readers12K

Сегодня многие разработчики различного уровня знают n8n как гибкий инструмент для автоматизации. В нем можно собрать почти любой сценарий - от простейшего Telegram-бота до сложных бизнес-процессов, используя множество готовых нод (узлов) для работы с популярными сервисами.

Но что делать, если в это множество не входит один из используемых вами сервисов, а через ноду HTTP Requests работать крайне сложно и неудобно? Или, может, хочется подключить собственный API и работать с ним по собственной логике?

Здесь напрашивается довольно простой ответ: написать свою ноду на n8n. Изначально это кажется сложным, однако, прочитав эту статью, вы сможете буквально за 1 вечер собрать минимально-рабочую ноду под ваши "хотелки".

Читать далее

Парсинг сайтов с Selenium на Python

Reading time8 min
Reach and readers14K

Многие начинающие разработчики сталкиваются с задачей, где нужно получить данные с сайта, а открытого API у него нет или его использование по каким-либо причинам невыгодно.

Самый очевидный из вариантов — парсинг HTML, но здесь часто возникает проблема: часть данных подгружается через JavaScript. В такие моменты использование условного requests и BeautifulSoup бесполезно.

Здесь на помощь приходит Selenium — инструмент для автоматизации браузера. С его помощью можно открывать страницы, имитируя действия настоящего пользователя, выполнять JavaScript и забирать данные в правильном виде.

Читать далее

Парсинг цен и данных о товарах конкурентов на Wildberries

Reading time11 min
Reach and readers18K

Всем привет! Ранее я уже писал про парсинг Wildberries, но та статья была довольно узконаправленной и не затрагивала более широкие возможности анализа. Да и с тех пор многое изменилось — тема стала ещё актуальнее, а у читателей накопилось больше вопросов.

Поэтому в этой статье мы разберём тему заново, но уже с акцентом на практическую пользу.

Читать далее

Парсинг Телеграм каналов, групп и чатов с обработкой в LLM

Level of difficultyMedium
Reading time10 min
Reach and readers18K

Всем привет! Вероятно, у каждого бывало: открываешь Телеграм-чат, а там тысячи новых сообщений за день. И где-то внутри этой «солянки» важный ответ на твой вопрос или обсуждение нужной темы. Или вам нужно отслеживать определённые сообщения для бизнес-целей.

Можно, конечно, потратить кучу времени на ручной поиск, но намного интереснее научить юзербота самостоятельно парсить историю чата и составлять из неё удобную базу для поиска по смыслу.

Читать далее

Универсальный парсинг сайтов на Python: requests vs headless, токены, куки, прокси и ротация IP

Reading time7 min
Reach and readers12K

Вы когда-нибудь радовались идеальному прототипу парсера, который у вас летал на демо-странице, а в проде внезапно начал ловить 403, 429, пустые HTML и «куда-то делись карточки»? Контент отрисовывается на JS, сервер требует токен, после смены IP, старая сессия перестаёт работать.

В этой статье я подробно разберу, как собирать данные устойчиво и предсказуемо, без излишней магии и с упором на реальную эксплуатацию.

Читать далее

Telegram Web App. Всё о Mini Apps

Level of difficultyMedium
Reading time11 min
Reach and readers15K

В прошлой статье я уже рассмотрел основные возможности Web App. Cегодня же подведём итоги, расскажем все особенности и нюансы работы с Web App в Telegram и соберём простенькое веб-приложение.

Читать далее

Свой ChatGPT на документах: делаем RAG с нуля

Level of difficultyMedium
Reading time6 min
Reach and readers14K

Всем привет! Наверняка у вас были ситуации, когда нужно быстро найти что-то в длинном документе-договоре, инструкции или отчёте. Сегодня я покажу, как сделать своего помощника, который будет отвечать на такие вопросы автоматически. Соберем RAG с нуля: загрузим документы, "нарежем" их на куски, проиндексируем в векторной базе данных Qdrant и подключим LLaMA.

Если вы увидели незнакомые слова — не пугайтесь, далее я расскажу об этом подробно.

Читать далее

Золотые сигналы SRE для самых маленьких. Или как сделать качественный мониторинг, если вы не Enterprise

Reading time3 min
Reach and readers4.5K

Проекты ломаются, иногда очень коварно. Крупные компании используют различные подходы, чтобы обеспечить наблюдаемость, покупают дорогие сервисы, нанимают SRE-инженеров. Но если проект небольшой, условный телеграм-бот, многие решения по мониторингу могут быть избыточными. Перед нами стала задача обеспечить для них Observability так, чтобы это было максимально просто, дешево(желательно бесплатно) и обеспечивало лучшие SRE-практики для наших пользователей. Так, чтобы обеспечить опыт наблюдаемости работы сервисов, близкий опыту крупной компании с SRE-отделом, только без сложности настройки и условно бесплатно.

Читать далее

Хостинг n8n. Где проще и надежнее запустить сервис

Reading time2 min
Reach and readers9.9K

n8n это система автоматизация бизнес-процессов с сотнями встроенных интеграций до сторонних сервисов.

Мы рассмотрим провайдеров, где n8n уже предустановлен, а также то, как его самостоятельно развернуть.

Читать далее

Установка и настройка Flowise AI для создания RAG-агентов

Reading time6 min
Reach and readers3.7K

Всем привет!

Это очередная статья из цикла, где мы разбираем различные способы применения ИИ-агентов с RAG — методом оптимизации работы и вывода LLM агента благодаря добавлению в контекст базы знаний. Проще говоря, мы даём модели какой-то объём знаний, по которому она способна работать. Это может быть как документ, по которому будет вестись поиск релевантных данных, так и база данных.

Использование подхода может быть полезно в различных задачах. Такая модель сможет работать с актуальными для вас данными, даже если память самой LLM ограничивается на неактуальных данных какого-нибудь 2022 года.

Сегодня будет рассматриваться очередной веб-интерфейс для взаимодействия с ИИ. И это будет FlowiseAI. Я постараюсь наглядно показать установку и работу с ним так, чтобы смог разобраться даже новичок.

Читать далее

n8n. Создаём AI Telegram agent с установкой и настройкой

Reading time6 min
Reach and readers47K

Всем привет!

В этой статье будет рассматриваться n8n — open source платформа для автоматизации рабочих процессов, которая поддерживает более 400 интеграций, в том числе LMM, векторные базы данных и все, что нужно, чтобы создать ИИ-агентов и RAG-приложений.

Итак, сегодня мы развернем n8n c RAG-агентом и покажем, как им пользоваться на простых примерах, среди которых будет telegram чат-бот для работы с БД PostgreSQL.

Читать далее

Telegram Mini App. Как создать Web App с нуля

Level of difficultyHard
Reading time13 min
Reach and readers143K

Mini Apps (или же WebApps) - это относительно новый и удобный способ добавления веб приложения прямо в интерфейсе приложения Telegram. Используя JavaScript, становится возможным создавать бесконечное множество интерфейсов, которые смогут заменить полноценный веб-сайт.

Особенность MiniApps заключается в том, что они поддерживают авторизацию, платежи одной кнопкой и возможность работать с данными пользователя, открывшего мини-приложение.

И сегодня мы попробуем создать miniapp приложение, взаимодействующее с данными пользователя.

Приступим

Читать далее

Бот-парсер маркетплейса на Python

Level of difficultyMedium
Reading time8 min
Reach and readers27K

Всем привет! В этой статье я решил показать один из методов парсинга на Python на примере маркетплейса Wildberries.

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

В проекте будут использоваться следующие библиотеки:

Читать далее

Деплой сайта в облако за 4 команды в IDE

Level of difficultyMedium
Reading time4 min
Reach and readers11K

Доброго времени суток! Думаю, у всех, кто начинал свой путь в сферу веб-разработки, было желание захостить свою работу. В этот раз мы попробуем максимально быстро задеплоить сайт-одностраничник.

Эта статья создана для новичков, которые смогут просто скопировать код и в “два клика” опубликовать сайт.

Читать далее

Managed Kubernetes. Полный список российских провайдеров

Level of difficultyEasy
Reading time2 min
Reach and readers2.8K

Если вы разрабатываете приложение с микросервисной архитектурой, вам может потребоваться развернуть его в кластере Kubernetes. Но Kubernetes сложная технология, и часто хорошим решением является использование managed-service for Kubernetes. В данной статье мы рассмотрим, кто предоставляет на Российском рынке услуги по управлению кластерами Kubernetes.

Читать далее
1

Information

Rating
Does not participate
Location
Россия
Registered
Activity