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

Резултати

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

Пребарај: #blues

当前筛选 #blues清除筛选
Axiom Pub на Бауманской

@axiompub_msk · Post #1498 · 25.02.2026 г., 09:26

Здравствуйте, друзья! 👋 Ну что же, наконец-то близится весна и GP Promo приглашает Вас встретить еë в Axiom Pub вместе с группой "PsycheDelta"! Будут всеми любимые новоорлеанские латино-блюзы, медленные, тягучие и качовые! И по специальной просьбе - немного настоящей латины с Кубы и Кабо-Верде! - 19.00 диджеи GP Promo начнут создавать для Вас атмосферу; - 20.00 выступление PsycheDelta. Дата: 01.03.2025 Время: 19.00-23.00 Место: "Axiom Pub на Бауманской" Адрес: Спартаковская пл., 16/15 ст2 Вход: свободный с вашей благодарностью. 🩷 Важно: бронируйте столики заранее +79647058888 #gppromo#psychedelta#blues#axiompub

Axiom Pub на Бауманской

@axiompub_msk · Post #1368 · 25.03.2025 г., 15:01

Настало время Аксиома на Бауманской! 😎 Знаем, что вы любите это место, и, GP Promo, совместно с Axiom Pub, приглашают Вас в субботу на весенний блюзовый вечер с группой PSYCHEDELTA! С нас - атмосфера и музыка, с Вас - настроение и танцы. 😏 В 19.00 вечер начнëт Павел Гор со своим разогревающим блюзовым сетом. 20.00 - 22.00 выступление PSYCHEDELTA. 22.00 - ... Сет от Вячеслава (Sly) Голованова. Дата: 29.03.2024 Время: 19.00-23.00 Место: "Axiom Pub на Бауманской" Адрес: Спартаковская пл., 16/15 ст2 Вход: свободный с вашей благодарностью. 🩷 Важно: бронируйте столики заранее +79031908089 #gppromo#psychedelta#blues#axiompub

Axiom Pub на Бауманской

@axiompub_msk · Post #1184 · 17.03.2024 г., 10:45

Всем привет! 👋 Следующая по расписанию блюзовая воскресная вечеринка от нас и Axiom Pub. В этот вечер создавать танцевальное настроение для Вас будет группа PsycheDELTA. Коллектив регулярно играет на различных танцевальных фестивалях и в дополнительном представлении не нуждается. За диджейскую часть в этот вечер будут отвечать Павел Гор и Антон Андреев! Дата: 17.03.2024 Место: Axiom Pub Спартаковская площадь, 16/15с2 Время: 20.00 - 00.00 Живая музыка: 21.00 - 23.00 Вход, как всегда: Free! Ждëм Вас! 😉 PsycheDELTA ВК: https://vk.com/psychedelta PsycheDELTA ТГ: https://t.me/psychedeltablues Axiom pub ВК: https://m.vk.com/axiompub_msk Axiom pub ТГ: https://t.me/axiompub_msk #gppromo#blues#axiompub#psychedelta

Axiom Pub на Бауманской

@axiompub_msk · Post #1116 · 28.01.2024 г., 08:07

«И снова вечеринка!» Друзья, приглашаем всех провести воскресный вечер в Axiom Pub под блюзовую музыку от Владимира Бобошина и Степана Гречки. Когда: 28.01.2024 20:00 – 00:00. Живая музыка с 21.00. Где: Axiom Pub Спартаковская площадь, 16/15с2, Вход: Свободный. Благодарность приветствуется: https://www.donationalerts.com/r/gp_promotion P.S. – Axoim Pub находится в 10 минутах пешком от ЛисоБорье, где будут мастер-классы Михайло с Настей! P.P.S Бронируйте столики заранее. #gppromotion#gppromo#блюз#blues

Buturlina NEWS

@buturlina_news · Post #151 · 30.07.2022 г., 17:09

Впервые решилась поснимать видео во время своего выступления на сцене)))) We are swinging the blues! Спасибо, Суздаль! 😍😍😍 Даниил Крамер Олег Стариков Павел Тимофеев Владимир Кольцов-Крутов #аннабутурлина#annabuturlina#blues#джаз_ню#jazzlive#liveconcert

Tibicen

@world_music_geek · Post #597 · 16.04.2024 г., 17:23

Khruangbin — A La Sala (Dead Oceans, 2024) #psychedelic#rock#funk#blues#soul#United_States Четвертый альбом техасского трио, горячо любимого самой широкой публикой, от привередливых критиков и музыкальных снобов до поклонников мейнстримной поп-музыки и хип-хопа. В 2024 году невозможно найти ни одну кафейню третьей волны, где не зазвучал бы Khruangbin. 🔗Spotify | AppleMusic | Bandcamp

Tibicen

@world_music_geek · Post #12 · 10.09.2020 г., 15:05

Frank Fairfield — Out On the Open West (Tompkins Square, 2011) #traditional#blues#country#bluegrass#appalachian#United_States Второй альбом Фрэнка Фэрфилда, певца, исполнителя на скрипке, гитаре и банджо. Фрэнк невероятно аутентично исполняет старинную народную музыку американских штатов, чем заслужил признание самых строгих критиков. Про него даже сняли документальный фильм. А еще он озвучивал персонажа Toymaker, появляющегося в четвертом эпизоде Songs of the Dark Lantern мультфильма Over the Garden Wall. Хотя начинал Фрэнк как обычный уличный музыкант. 🔗Spotify | AppleMusic

Tibicen

@world_music_geek · Post #453 · 27.10.2023 г., 08:21

Frank Fairfield — NPR Music Tiny Desk Concert (2015) #blues#country#bluegrass#appalachian#video#United_States Фрэнк Фэрфилд исполняет старинную американскую народную музыку в сопровождении Тома Мариона и Зака Соколоу. Особенно хороша песня I Ain't A Goin' To Weep No More, где лирический герой поет о том, что больше никогда не будет печалиться, потому что его любимая согласилась выйти за него. Фрэнк невероятно аутентично исполняет народную музыку американских штатов, чем заслужил признание самых строгих критиков. Про него даже сняли документальный фильм. А еще он озвучивал персонажа Toymaker, появляющегося в четвертом эпизоде Songs of the Dark Lantern мультфильма Over the Garden Wall. Хотя начинал Фрэнк как обычный уличный музыкант. 🔗YouTube | Telegram

Tibicen

@world_music_geek · Post #619 · 16.05.2024 г., 18:32

Mdou Moctar — Funeral for Justice (Matador Records, 2024) #tuareg#psychedelic#blues#rock#tishoumaren#assouf#takamba#Niger В Нигере уран составляет почти весь экспортный продукт, но большая часть прибыли от этого получает бывшая метрополия — Франция. И хотя Франция отказалась от всех военных баз в Нигере после военного переворота 2023 года, многие из её шахт продолжают работать и по сей день, вызывая утечку радона в системы водоснабжения близлежащих городов. Загланый трек Funeral for Justice, нового альбома африканской группы Mdou Moctar, начинается со слов лидера группы Махамаду Сулеймана, критикующего такое положение дел в стране: Оккупанты делят ваши земли Галантно маршируют по вашим ресурсам. Для Махамаду Сулеймана музыка неразрывно связана с политическим самовыражением. «Ассуф» или «пустынный блюз», который исполняет Mdou Moctar, родился на поле гражданской войны и всегда был голосом таурегского сопротивления. Настроения Сулеймана были ясны и на его альбоме Afrique Victime 2021 года: Африка стала жертвой очень многих преступлений. Если мы будем молчать, нам придёт конец. Однако его послание можно было упустить из виду. Гитарная техника Сулеймана принесла ему ему мировую известность, но отвлекала от политического диалога, который музыкант хотел завести со слушателем. На Funeral for Justice всё указывает на протест — от крови, капающей с крыльев ворона на обложке альбома, до визга гитар, открывающих заглавную песню. В интервью The New York Times Сулеймана сказал, что звуком своей гитары старался изобразить крик человека, молящего о помощи. Funeral for Justice — это звук бунта, перенесенный с языка тамашек на язык музыки, не поддающийся неверному истолкованию. 🔗Spotify | AppleMusic | Bandcamp

Tibicen

@world_music_geek · Post #267 · 23.05.2022 г., 14:01

Etran de L’Air — Agadez (Sahel Sound, 2022) #tuareg#psychedelic#blues#rock#tishoumaren#assouf#takamba#Niger Etran de L’Air, или «звезды региона Аир» — семейная группа, состоящая из братьев и кузенов, за последние 25 лет сделавших себе имя на свадебных вечеринках. Семья братьев происходит от кочевых племен туарегов, поселившихся в Агадесе в 1970-х годах, спасаясь от засухи. Братья родились и выросли в районе Абалане, в тени Большой мечети Агадеса. 1995 году их родственники начали исполнять музыку, когда нынешнему лидеру группы Муссе «Абинди» Ибра было всего 9 лет. «У нас была только одна акустическая гитара, — говорит он, — а вместо барабанов мы использовали калебас, по которому били сандалией». Etran de L'Air играют в панафриканском стиле, черпая вдохновение от малийского блюза, барных групп хауса и конголезского сукуса. Возможно, именно это качество делает их такими любимыми в родном Агадесе, где проживает множество разных народностей. 🔗Spotify | AppleMusic | Bandcamp | VK

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