TGTGInsighttelegram intelligenceLIVE / telegram public index
← Python Заметки

TGINSIGHT SIMILAR POSTS

Најди сличен содржај

Изворен канал @pythonotes · Post #121 · 20 јул.

Регулярно требуется преобразовать какой-либо текст в максимально совместимый текст для 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

Резултати

Пронајдени 1 слични објави

Пребарај: #mirraai

当前筛选 #mirraai清除筛选
Mirracoin Новости

@MirraChannel · Post #326 · 03.12.2025 г., 07:38

😎 Что такое MirraCoin и почему это не просто криптовалюта? MirraCoin - это полноценная блокчейн-экосистема взаимосвязанных продуктов, объединённых единой технологической базой и криптовалютой, для обеспечения работоспособности умных цифровых договоров(smart-contracts). Представьте себе цифровой город будущего, где социальная сфера, коммуникации, где образование, искусство, а также бизнес работают на блокчейн-инфраструктуре - без посредников, с полной прозрачностью и максимальной защитой. Блокчейн MirraCoin: В основе экосистемы лежит собственный, разработанный в России, блокчейн с уникальным алгоритмом консенсуса Proof of Timed Authority (PoTA). Что это значит простыми словами? Представьте общую записную книгу, которая одновременно находится у миллионов людей по всему миру. Каждая запись (транзакция, диплом, NFT, документ, любое действие) вносится в эту книгу у всех одновременно и скрепляется криптографической печатью. Изменить запись задним числом невозможно - нужно переписать книгу у всех участников одновременно, что технически просто невозможно. В этом и состоит безопасная среда децентрализованного блокчейна. Децентрализация MirraCoin меняет правила: • Нет единого контролёра - система поддерживается сетью валидаторов по всему миру. Один сервер упал? Остальные продолжают работать • Вы владеете своими активами - криптовалюты, токены, цифровые финансовые активы(ЦФА) в вашем кошельке, NFT в вашей коллекции, дипломы, свидетельства о праве собственности и многое другое, в блокчейне. Только у вас есть приватный ключ. • Прозрачные правила - механизмы работы и комиссии зафиксированы в коде. Никто не может изменить их в одностороннем порядке. • Невозможно подделать - каждая запись подтверждена криптографически и видна всем участникам сети. Что уже доступно: • MirraVision – платформа для онлайн-встреч, вебинаров и совместной работы, общение с родными и близкими по всему Миру. • Art.Mirracoin – онлайн-галерея и маркетплейс цифрового и традиционного искусства для Российского рынка и стран СНГ. Это совместный проект MirraCoin с издательством журнала «Художники России». • DigitalExchange.art – онлайн-галерея и маркетплейс цифрового и традиционного искусства для международного рынка. Это совместный проект MirraCoin и АНО «Искусство Объединяет Мир», созданный в рамках участия в культурных программах для стран ШОС и БРИКС. • MirraCoin Explorer – обозреватель блокчейна, где в реальном времени можно отслеживать все транзакции и блоки. Что скоро появится: • Mirra Academy - образовательная платформа о блокчейне, криптовалютах и цифровых финансах, где любой преподаватель может зарегестрировать свой курс, пройти модерацию и нести знания людям о современных цифровых технологиях. • Mirra IT - решения в области web-разработки, робототехники и умных устройств, где Вы можете заказать разработку у наших лучших программистов для своего проекта. • Mirra P2P - платформа для обмена MirraCoin и других ЦФА. • Mirra Mining - физический и облачный майнинг MirraCoin на собственном оборудовании Mirra Box. • Mirra AI - искусственный интеллект на базе технологий Mirracoin. Зачем блокчейн нужен обычному человеку? Не для спекуляций. Не для хайпа. Для реальной жизни: учись, работай, твори, зарабатывай, защищай свои права и многое другое - всё в одной прозрачной и безопасной экосистеме Mirracoin. MirraCoin - это возможность оцифровать свой бизнес и перевести его на блокчейн для прозрачности, безопасности и доверия. Строим цифровое будущее Вместе! Подписывайтесь на наш канал, чтобы не пропустить обновления и новые сервисы! #MirraVision#MirraCoin#Обновления#Майнинг#Blockchain#token#NFT#художникиРоссии#DigitalExchangeart#IT#P2P#Децентрализация#Web3#сделановроссии#MirraAI @MirraChannel😎