Регулярно требуется преобразовать какой-либо текст в максимально совместимый текст для URL, имени файла, имени объекта в каком-то софте и тд. Требования совместимости простые: в тексте должны быть только допустимые символы. Обычно это a-z, 0-9 и "_" или "-". То есть, только прописные буквы латинского алфавита и цифры (как пример).
Допустим, нам нужно название статьи в блоге преобразовать в slug для добавления его в URL этой статьи. Как это лучше всего сделать?
В Django по умолчанию есть готовая функция slugify для таких случаев.
Но я её никогда не использую. Почему? Потому что её недостаточно!
Приведём пример
>>> from django.utils.text import slugify
>>> slugify('This is a Title')
'this-is-a-title'
Пока всё отлично
>>> slugify('This is a "Title!"')
'this-is-a-title'
Спец символы удалились, всё хорошо.
>>> slugify('Это заголовок статьи')
''
Вот и приехали 😢. Если текст не английский то буквы просто игнорируются. Можно это поправить
>>> slugify('Это заголовок статьи', allow_unicode=True)
'это-заголовок-статьи'
Но тогда мы не вписываемся в условие. У нас появилась кириллица в тексте.
Так как я часто пишу сайты для русскоязычных пользователей эта проблема весьма актуальна. Я не использую стандартную функцию и всегда пишу свою.
Оригинал я не беру в расчёт и пишу полностью свою функцию. И так, по порядку:
🔸1. Исходный текст:
>>> text = 'Мой заголовок №10 😁!'
Взял специально посложней со специальными символами.
🔸2. Транслит
Необходимо сделать транслит всех символов в латиницу. Здесь очень выручает библиотека unidecode. Помимо простого транслита кириллицы в латиницу она умеет преобразовывать спец символы и иероглифы в текстовые аналоги.
from unidecode import unidecode
>>> unidecode("Ñ Σ ® µ ¶ ¼ 月 山")
'N S (r) u P 1/4 Yue Shan'
Очень крутая библиотека, советую👍
В нашем случае получаем такое преобразование:
>>> text = unidecode(text)
>>> print(text)
'Moi zagolovok No. 10 !'
Отличный транслит. Смайл просто удалился, хотя я ждал что-то вроде :). Ну и ладно, всë равно невалидные символы.
А еще наш код уже поддерживает любой язык, будь то хинди или корейский.
🔸4. Фильтр символов
Unidecode не занимается фильтрацией по недопустимым символам. Это мы делаем в следующем шаге через regex. Просто заменим все символы на "_" если они вне указанного диапазона.
>>> text = re.sub(r'[^a-zA-Z0-9]+', '_', text)
>>> print(text)
'Moi_zagolovok_No_10_'
Символ "+" в паттерне выручает когда несколько недопустимых символов идут рядом. Все они заменяются на один символ "_".
🔸5. Slugify
Осталось удалить лишние символы по краям и сделать нижний регистр
>>> text = text.strip('_').lower()
>>> print(text)
'moi_zagolovok_no_10'
Получаем отличный slug! 😎
🌎 Полный код в виде функции.
______________
PS. Проверку что в строке остался хоть один допустимый символ я бы вынес в отдельную функцию.
#libs#tricks#django
Он уже почти согласен… осталось только правильно намекнуть.
Экосистема VEON Ads для e-commerce — это как ненавязчивый психолог-продажник:
🔮 Видит, что заинтересовало пользователя
🛍 Ловит момент готовности к покупке
🛒 Превращает «почти купил» в «заказал» без давления
Пример:
— Просмотрел кроссовки — «Получил предложение с бесплатной доставкой»
— Бросил корзину с техникой — «Спец цена на последний экземпляр»
— Смотрел украшения — «Подборка и промокод»
Это не ретаргетинг, а умный контакт в нужный момент:
✅+30% к конверсии
✅ -35% к стоимости лида
✅ Доверие к бренду без раздражения
Оставьте заявку, и мы покажем, как работает нативный e-commerce в VEON Ads
#VEONAds#SmartAdvertising#ECommerceMarketing#ContextualAds
👋👋Всё о digital-рекламе в Узбекистане: аналитика, лайфхаки и готовые решения.
Поймайте момент, пока он ещё горяч 🔥
Пользователь:
💬 Чекнул баланс
👩⚕️ Записался к врачу
💳Оплатил счёт
Мы:
🍔 «20% скидка на бургеры»
🍣 «Суши-бар — бесплатная доставка до 18:00»
☕️ «Кофе с печенькой за полцены»
Почему это не просто реклама:
🎯 Ловим клиента в моменте (не спамим, когда не надо)
🎯 Предлагаем то, что реально актуально прямо сейчас
🎯Без навязчивости — как совет лучшего друга
Когда предложение — в нужный момент, результат такой:
— Конверсия в 3 раза выше обычной рекламы
— Средний чек +25% (потому что вовремя предложили)
Управляешь кафе, рестораном или отелем? Пора ловить не охват — а реальных клиентов.
Пиши — покажем, как⚡️
#VEONAds#SmartAdvertising#HoReCaMarketing#ContextualAds
👋👋Всё о digital-рекламе в Узбекистане: аналитика, лайфхаки и готовые решения.
⭐ Реклама в мессенджерах: Телеграм новая рекламная арена?
📱 Telegram это уже не просто чат. В Узбекистане он стал главным daily feed:
новости, покупки, комьюнити, мемы — всё в одном приложении. И да, бренды теперь тоже здесь.
👀 Чтобы проверить, насколько платформа вышла за рамки привычного мессенджера, мы проанализировали агрегированную статистику наших данных — делимся инсайтами:
👥 Приложение собирает более 4 млн активных пользователей ежемесячно — это примерно на 8% больше, чем у Instagram, и сопоставимо с Facebook.
📤 По частоте заходов, оно также лидирует: наши пользователи открывают его в 1,5–2 раза чаще, чем WhatsApp, и в 1,2 раза чаще, чем Instagram.
☝️ Разница не только в цифрах. Telegram действительно стал больше чем просто «чат», сегодня это и привычка общения, и поток контента.
Именно поэтому и реклама здесь появляется не «где-то в ленте», а там, где пользователь уже проводит своё время каждый день.
📩 Хотите узнать, как это меняет эффективность РК?
Расскажем в следующем посте👇
https://veonadtech.com/ru
#VEONAdTech#TelegramAds#DigitalMarketing#SmartAdvertising#MessagingApps#DataDriven
#MarketingInsights#AttentionEconomy
👋👋Всё о digital-рекламе в Узбекистане: аналитика, лайфхаки и готовые решения.
Когда вы на шаг впереди — вам не нужно кричать, чтобы вас заметили🤭
В VEON AdTech:
🏎 Никакой гонки за вниманием.
🎰 Никакой ставки на «повезёт — увидит».
🧐 Никаких «шумов» на фоне
Объявление появляется не поверх интерфейса,
а внутри маршрута пользователя:
✔️ интерес ✔️
✔️действие ✔️
✔️ решение✔️
💬 А вы хотите войти в момент, когда внимание не нужно завоёвывать — а достаточно просто быть на месте?
https://veonadtech.com/ru
#VEONAdTech#DigitalMarketing#AttentionEconomy#AdTech#SmartAdvertising#DataDriven#CustomerJourney#PerformanceMarketing#PrecisionTargeting
🚀 VEON Ads
Это развитая экосистема с умной логикой показа и прозрачной аналитикой.
Каждая интеграция усиливает не просто охват, а управляемость.
Вы знаете, кому, где и зачем показалось объявление.
📊 Реклама видима!
⚙️ Механика понятна!
👥 Поведение подтверждено!
Это и есть главное отличие:
VEON Ads — это не рынок рекламы.
Это система принятия верных решений.
https://veonadtech.com/ru
#VEONAds#VEONAdTech#DigitalMarketing#AdTech#SmartAdvertising#DataDriven#MarketingAnalytics#PerformanceMarketing#AttentionEconomy#CustomerJourney
📊Почему реклама в Telegram показывает другие цифры
📱 В прошлом посте мы рассказали: Telegram > мессенджер.
Следующий шаг — посмотреть, что это значит для брендов.
🪙 На основе наших запусков РК мы сравнили, как реклама в Telegram отрабатывает в цифрах — на фоне привычных digital-платформ.
Что показал анализ:
⬇️ Реклама в TG ещё непривычна → внимание выше, меньше «баннерной слепоты»
📤 Формат похож на обычное сообщение → доверия больше
📈 CTR в Telegram в 2–4 раза опередил привычные медийные форматы
📉 CPA оказался до 3 раз ниже среднего по рынку
🫴 Цена за лид в среднем была в 3–5 раз меньше.
⚡️ Эти результаты показывают: Telegram Ads эффективен не потому, что это «ещё один новый канал», а потому что реклама здесь привычна для поведения пользователя.
https://veonadtech.com/ru
#VEONAdTech#TelegramAds#AdTech#DigitalMarketing#SmartAdvertising#DataDriven#MarketingInsights#PerformanceMarketing#AttentionEconomy#CustomerEngagement
👋👋Всё о digital-рекламе в Узбекистане: аналитика, лайфхаки и готовые решения.