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

Резултати

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

Пребарај: #home

当前筛选 #home清除筛选
Crypto Signals & Bot Trades

@cryptosignalalert · Post #28133 · 02.01.2026 г., 14:42

🎯🎯#HOME/USDT long trade hit all targets with up to 21% profit 📈 Struggling with your trades? 🗨Join our Premium Channel for expert signals — DM @cripexperts to get started!

Hashtags

American Crypto©

@americancryptotrading · Post #27450 · 26.11.2025 г., 06:29

🇺🇸#HOME/USDT has broken above the descendingchannel formation on the daily chart👨‍💻 More upside is expected on a bounce🐃 American Crypto©

Hashtags

Free Crypto Signals (Profitable Zone)

@btctradingclub · Post #26674 · 01.01.2026 г., 17:07

✅✅ 55% Profit on #HOME/USDT for our Premium Members on On Binance Futures, Bitget Futures, ByBit USDT, KuCoin Futures, OKX Futures 👆🏻All Profit Targets Successfully Completed 👁‍🗨Contact @primemod to enter the most powerful premium group & make daily gains

Hashtags

🔥 Стакансо спиральной соломинкой Думаю тут и так все понятно. Единственное при печати емкостей под воду, используйте избыточный поток пластика, высокий слой и чередующуюся стенку. 🔗Скачать:MakeWorld #️⃣ Категория:#home@anzar3d 🖨3D модели | Max

Hashtags

#home 2 свободен с 1 мая 🤩 Тем кто давно хотел попасть в него срочно пишите/звоните для бронирования Марии +7 916 499-68-33 ✏️

Hashtags

头条事件

@toutiao5 · Post #134596 · 14.04.2026 г., 14:49

#网友曝光#黑平台#home 曝光黑平台home,我在这个平台一直没赢过,昨天我存了10000本来想着梭哈哥伦比亚大赛,但是觉得等比赛太无聊我就下了9000留了1000去拉电子,后面电子把我1000杀完了 因为比赛还没结束我就又存了3000继续拉电子,等电子炸回来的时候刚好比赛也结束了,然后我又继续下了3000的大球想着赢了凑个2万5,一直到比赛结束提款发现一直在审核,要知道这个月我刚输进去一两万,说白了只是这个月回个本而已 但是这个黑台直接把我2.2万给锁定,并告知我需要提供资料,审核完毕后也只是退我最后一笔3000,我真觉得好搞笑,平台给出的理由是我刷水套利,扪心自问我打的是甲级赛,拉的是平台电子,并且没有申请彩金,我套什么利?就你们那边赠送的存款优惠都不够我拉一下电子也好意思说别人套利?还退我最后一笔,简直就是即想当婊子又要立牌坊 请大家擦亮眼睛,谨慎娱乐,远离home这种黑平台,没点实力学别人当盘总,当的明白吗,赶紧倒闭吧。 频道广告赞助商 ——————————————— ⚡️ ⚡️ ⚡️ ⚡️ 一触即付,安全无忧;开户即享 😙费率,会员多重豪礼,商务:@sw_234com官网: 234.com 😀 😀 😀 😀 😀 单笔 😀 😀 😀 😀 😀 极速秒提,大额无忧 !官网:U8.COM 飞投:@U8U8 😀 🌟 🌟 🌟 🌟 🌟 🌟 🌟 🌟 🌟U存U取 首存送16666U 返水1.3%起 🚊 😈 👿 👹 👺 🤡 💩 😀 😀 😀 😀指定投注 官网: 6G.com 大额秒提0审核 🌟彩票: 6G.com 【Y3国际】头条4月初注册玩家6天净赚280万U@Y3Y3💔 ——————————————— ➡️ 投稿联系: @qs456 😀

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