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

Резултати

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

Пребарај: #bitrix24

当前筛选 #bitrix24清除筛选

Хотите начать работать в Битрикс24, но не знаете, как к нему подступиться? Чудо Иван записал для вас отличную инструкцию по первым шагам! Делай раз, делай два😀 Пользуйтесь! Дорогу осилит идущий! #Битрикс24#Bitrix24 https://youtu.be/UhE6z_PNzVk

🚀 Вебинар: Автоматизация логистики с Bitrix24 📅 Дата: 27 марта 2025 г. 🕒 Время: 19:00 📍 Формат: онлайн в канале https://t.me/Bloglogist Приглашаем вас на практический вебинар, где мы разберем, как с помощью Bitrix24 оптимизировать логистические процессы, автоматизировать управление грузоперевозками и складскими операциями. 🔍 Что будет на вебинаре: ✅ Основные возможности Bitrix24 для логистики. ✅ Интеграция CRM с логистическими процессами. ✅ Автоматизация уведомлений, маршрутов и заказов. ✅ Управление клиентами и аналитика в Bitrix24. ✅ Примеры из практики и ответы на ваши вопросы. 🌟 Спикеры: - Николай Юдинских: эксперт в области грузоперевозок и логистики. - Артем Иващенко: специалист по внедрению Bitrix24 с нуля до сложных интеграций. 👥 Для кого: - Владельцы логистических компаний. - Менеджеры по логистике и складу. - IT-специалисты и все, кто хочет автоматизировать бизнес-процессы. Не упустите шанс узнать, как сделать вашу логистику эффективнее с Bitrix24! 🎁 P.S. Участники вебинара получат полезные материалы и чек-листы по автоматизации процессов. #Логистика#Bitrix24#Автоматизация#Вебинар#CRM

В современном мире всё меньше становится видов работ, которые нельзя было бы автоматизировать. С одной стороны, нет ничего лучше живого общения и звонка от своего личного менеджера с вопросом: «Как ваши дела?». Мы помним эти времена, когда это было заложено в головах менеджеров, а не в задачах CRM. Но о преимуществах внедрения CRM спорить бессмысленно, поэтому даже самые консервативные компании продолжают обращаться за внедрением, наш кейс как раз об этом. Продолжаем упрощать сложное и не усложнять простое. #Битрикс24#Bitrix24#CRM#методсоли https://blog.saltpro.ru/Solim-zapravlyaem-i-zapuskaem-CRM-Bitriks24-v-optovoj-kompanii/

🧐 Как уже пятница? А где традиционный мем от Соли? А вот же он) Друзья, давайте вместе улыбнёмся наступающим выходным 😄 #Битрикс24#Bitrix24#Битрикс#Bitrix#CRM#методСоли#мемсоль

💥 Пятничный мем врывается в чатик! С последним рабочим днём недели друзья) Солнечных вам выходных 🌞 #Битрикс24#Bitrix24#Битрикс#Bitrix#CRM#методСоли#мемсоль

💼 Зачастую работа менеджеров состоит в обработке поступивших заявок, но если заказ от постоянного клиента не пришёл, про него могут и забыть. 🤝 Наше "Приложение Автоматическое создание сделок по потерянным клиентам" вынуждает менеджера работать с постоянными клиентами, так как создаёт в CRM новые сделки по контактам, компаниям, чья регулярность заказов "страдает". ⚙ Своевременно реагируйте на сбои в заказах и не упускайте клиентов. А если у вас пока нет постоянных клиентов, с нашим приложением они обязательно появятся! Подробнее о работе незаменимого помощника рассказываем в нашей инструкции.👇🏻 https://blog.saltpro.ru/~comeback #Битрикс24#Bitrix24#Битрикс#Bitrix#CRM#ЗапускCRM#ВнедрениеCRM

🏚 Процедура бронирования квартир в новостройках достаточна проста. Выбрал, позвонил, забронировал, - вуаля! 🧐 А как устроен процесс изнутри в связке CRM Битрикс24 и сайта заказчика, посмотрим сегодня в кейсе. https://clck.ru/ae4C8 #Битрикс24#Bitrix24#Битрикс#Bitrix#CRM#ЗапускCRM#ВнедрениеCRM

💡Порция полезных материалов, а именно – кейс! Тема: «Jira и Битрик24». Как совместить, зачем, в чём польза? 👍Читайте, будет интересно! https://blog.saltpro.ru/~JiraIntBitrix Есть вопросы? Напишите нам – будем рады ответить. #Битрикс24#Bitrix24#Битрикс#Bitrix#CRM#ЗапускCRM#ВнедрениеCRM

🤝 Командная работа эффективнее, чем работа в одиночку, поэтому слаженно работающий коллектив – мечта работодателя. 💥 Сегодня разберём, кейс про работу бизнес-процессов, которые помогают выстроить процесс сообщений-напоминаний в командной работе любого отдела. 📢 Читайте, будет интересно! https://blog.saltpro.ru/~reminders #Битрикс24#Bitrix24#Битрикс#Bitrix#CRM#ЗапускCRM#ВнедрениеCRM

🌐 Если у вас есть сайт на 1С-Битрикс и коробочный Битрикс24 и при этом наблюдаются проблемы с авторизацией пользователей, работой чатов и приложений, то, возможно, наша статья вам поможет. 😁 Читайте, наша техническая поддержка уверяет, что будет интересно. https://blog.saltpro.ru/~cookies #Битрикс24#Bitrix24#Битрикс#Bitrix#CRM#ЗапускCRM#ВнедрениеCRM

ПретходнаСтраница 1 од 4Следна