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 слични објави

Пребарај: #1990s

当前筛选 #1990s清除筛选
Информационная эстетика

@information_esthetique · Post #268 · 01.11.2025 г., 13:22

Реклама как инфографика, инфографика как реклама Когда я листаю подшивки старых выпусков журналов с инфографикой, то нахожу интересные примеры рекламы. Их я публикую в своём канале про Артефакты печатной рекламы, чтобы не смешивать форматы. Но тут мне попалась реклама с таблицей. А хорошо свёрстанная и размеченная таблица — это тоже инфографика (например, результат анализа текстов Playboy я сделал в Excel). Поэтому решил опубликовать эту интересную рекламу-инфографику в обоих своих каналах. Автопроизводитель Honda рекламирует новую малолитражку Civic VX и на цифрах показывает сколько будет стоить переезд из города в город. А чтобы эти цифры казались маленькими, крупной фразой «Now fly for less» подталкивает сравнивать их с ценой авиаперелётов. Набросал, как могла бы выглядеть эта таблица в виде графика. Манипулятивно? Да. Но это ведь реклама. #1990s#Time

Hashtags

Jojo's elegant academy

@jojoordie · Post #3290 · 19.02.2026 г., 17:22

🇯🇵 Камикадзе-такси / Kamikaze takushi 📆 1995 🎭 Экшен-драмеди, роуд-муви 👨‍🎨 Масато Харада 🏆 Премия «Кинэма Дзюмпо» — лучшая роль второго плана (Мики Кёртис) 🏆 Премия «Майнити» — лучший актёр (Кодзи Якусё) 🏆 Иокогамский кинофестиваль — лучший дебют (Рэйко Катаока) 🐶 Животных не трогают Удивительно, насколько неуёмным может оказаться размеренный трёхчасовой фильм, сделанный в стилистике магического реализма. Масато Харада берёт экшен-триллер-зачин «молодой тимпира отправляется мстить якудзе за убитую секс-работницу», умножает его на вкрапления Годара и Вендерса, после чего делит на актуальную политическую повестку, продолжительные роуд-муви-отрезки и мистическую медитацию. Наибольший эффект оказывает актуалочка. «Камикадзе-такси» дает столь обширную информацию о розе японских социокультурных ветров середины 1990-х, что впору доставать из костра клеймо с надписью «исторический»: 🤩 Осатаневшие после «пузыря» люди потерянного десятилетия; 🤩 Феномен ненависти к никкэйдзинам (иностранцам японского происхождения) и дэкасэги (рабочим, приехавшим на заработки в Японию) со всеми сопутствующими нюансами, вроде конфликта крови и культуры, турбулентности на рынке труда, ксенофобии и маргинализации отдельных слоёв населения; 🤩 Наследие эпохи Сёва — коррумпированные и морально устаревшие политики и общественные деятели: сказывается гигантский скандал 1994-го, когда после обвинения во взяточничестве ушёл в отставку премьер-министр Морихиро Хосокава; 🤩 Критика мизогинии; 🤩 Переосмысление камикадзе. И всё это — под давлением климата травмы 1995 года: жуткое землетрясение в Кобе в январе и зариновая атака «Аум Синрикё» в марте. При таких вводных понятно, почему Харада не хочет торопиться и использует каждый сегмент, будь то поездка по неоновым улицам Токио или задушевные разговоры на природе, для эскапизма. Однако это никак не снижает желание одёрнуть постановщика, посадить его в тень и дать бутылку, в которой плещется холодный мугитя. К сожалению, у Харады целая куча мыслей и тем для обсуждения, и он суёт в кадр каждую, забывает про них и несётся к следующей. Так, фильм начинается с псевдодокументальных кадров с этническими японцами из Бразилии и Перу. Затем, после небольшого сюжетного скачка, идут аналогичные сцены с ярмарки на каком-то фестивале. А потом, где-то после трети хронометража, подобные элементы полностью пропадают из повествования. Харада таких настроенческих вольностей не просто не стесняется — он ими упивается. И всё же упрекнуть режиссёра в неконсистентности не получается. Разрозненные сцены, герои, мотивы и ощущения вполне органично сшиваются в единый поток мистическими белыми нитками. Тут можно без последствий вырезать минут 15, 30, даже 45, и в то же время кино не кажется безбожно затянутым. Увидь я «Камидазе-такси» в школьном возрасте, он с лёгкостью бы стал одним из моих любимых фильмов. Сейчас же эмоциональные колебания поднимаются лишь немногим выше отметки «любопытный стафф». Что, в наше-то время, тоже немало. #talesfromthebacklog#jmovies#1990s