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

Резултати

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

Пребарај: #ravedao

当前筛选 #ravedao清除筛选
NEWS 鏈新聞-ABMedia

@abmedia_news · Post #23969 · 18.04.2026 г., 13:29

【🔒 資訊安全|ZachXBT 點名 Bitget、Binance、Gate:RAVE 炒作源於交易所內部,自掏 1 萬美元懸賞吹哨者】 ZachXBT 指控 $RAVE 拉盤出貨活動源自 Bitget、Binance、Gate 內部,要求內部調查並開除涉事人員,24h 合約爆倉 4,300 萬美元。 #ZachXBT#Bitget#RaveDAO 📍閱讀全文: https://abmedia.io/zachxbt-rave-pump-dump-bitget-binance-gate-insider-bounty

NEWS 鏈新聞-ABMedia

@abmedia_news · Post #23979 · 19.04.2026 г., 10:37

【🏦 CeFi|RaveDAO 團隊發聲否認炒作:六連推反駁「我們沒有操作幣價」,ZachXBT 吹哨獎金升至 2.5 萬美元】 RaveDAO 團隊於 X 發出六連推公開否認操作 RAVE 幣價,但避開 98% 籌碼集中、4,200 萬美元轉幣入交易所等關鍵鏈上指控。ZachXBT 同步把吹哨獎金從 1 萬升至 2.5 萬美元。 #RaveDAO#ZachXBT#市場操縱 📍閱讀全文: https://abmedia.io/ravedao-team-denies-rave-token-pump-response-binance-bitget-probe

시팡이 공부방~~❤️

@sipangE · Post #18580 · 15.09.2025 г., 11:38

📱 방금 @DefiantNews를 통해 소식이 들어왔어요:) @RaveDAO와@worldlibertyfi가@kbwofficial에서 세계 최초로 #USD1 기반의 실시간 결제 체험을 선보입니다! 관련뉴스를 확인하세요: LINK 📱 음료, 음식 등 다양한 경험을 모두 #USD1로 즐기세요 게다가 첫 번째 RaveDAO Korea 챕터가 공식 출범합니다! 📱 GA 티켓은 금방 매진될 거예요, 지금 바로 @plvrio 에서 자리를 예약하세요 📱@sip 에서 함께합니다! 티켓 예매링크: LINK sip한국공식채널:LINK #RaveDAO#USD1#WorldLibertyFi#KoreaEvent#Web3파티