@voir_yeux · Post #11935 · 28.02.2026 г., 18:03
🇮🇷 Un rassemblement de soutien aux autorités a débuté à Téhéran, rapporte l'agence ISNA. #iran#manifestation
Hashtags
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
Пребарај: #manifestation
@voir_yeux · Post #11935 · 28.02.2026 г., 18:03
🇮🇷 Un rassemblement de soutien aux autorités a débuté à Téhéran, rapporte l'agence ISNA. #iran#manifestation
Hashtags
@sos_donbass · Post #396 · 17.04.2023 г., 18:43
On se voit à Tarbes ce samedi, les amis du sud-ouest ? #manifestation#paix#france Association Réaction Pyrénées
Hashtags
@voir_yeux · Post #12404 · 04.04.2026 г., 19:03
🇩🇪Des milliers de personnes ont manifesté à Berlin contre la politique sécuritaire du gouvernement allemand, rapporte TASS. #allemagne#manifestation
Hashtags
@voir_yeux · Post #12209 · 21.03.2026 г., 21:42
🇪🇸À Madrid, des centaines d’Espagnols ont pris part à une manifestation contre l’opération israélo-américaine en Iran. Le rassemblement a eu lieu près de la gare ferroviaire de la capitale d’Espagne, informe un correspondant de TASS depuis les lieux. L’action est organisée par l'Assemblée internationaliste de Madrid. Les participants soulignent que les hostilités déclenchées par le président américain Donald Trump ont le seul but de renforcer l’hégémonie des États-Unis sur l’échiquier mondial, alors que les Palestiniens et les Iraniens, les Vénézuéliens et les Cubains, aussi bien que les Libanais sont sacrifiés sur l’autel. Les manifestants se prononcent pour le retrait de leur pays de l’Otan et le refus de financer le réarmement et les budgets militaristes, ainsi que pour la fin du commerce d’armes avec Israël. #manifestation#iran#espagne
Hashtags
@voir_yeux · Post #11948 · 01.03.2026 г., 16:26
🇵🇰 Des milliers de personnes sont sorties dans les rues de la capitale pakistanaise pour manifester contre les frappes américaines et israéliennes sur l'Iran. #pakistan#manifestation#iran
Hashtags
@voir_yeux · Post #12537 · 14.04.2026 г., 11:56
🇺🇸🇮🇱 La police a interpellé à New York environ 90 participants à une manifestation contre les livraisons d’armes américaines à Israël, a rapporté le New York Times. Selon la publication, près de 200 manifestants se sont rassemblés devant les bureaux des sénateurs démocrates Chuck Schumer et Kirsten Gillibrand dans un quartier du centre de New York. Les protestataires ont bloqué la circulation automobile pendant environ une heure. #étatsunis#israёl#manifestation
Hashtags
@voir_yeux · Post #11591 · 03.02.2026 г., 15:43
🇷🇺🇻🇪Une manifestation en soutien à Nicolas Maduro et son épouse, capturés à Caracas par les forces armées américaines, se tient près de l'ambassade du Venezuela à Moscou, rapporte un correspondant de TASS. Les manifestants réclament la libération du président vénézuélien. #russie#venezuela#manifestation
Hashtags
@voir_yeux · Post #12119 · 15.03.2026 г., 15:50
🇭🇺🇺🇦 Une marche pour la paix, rassemblant des dizaines de milliers de personnes, s'est déroulée à Budapest à l'appel du parti au pouvoir Fidesz-Union civique hongroise. Elle a été organisée en soutien à la politique du gouvernement hongrois qui refuse d'octroyer d’aide militaire à l'Ukraine, malgré les menaces de Vladimir Zelenski. #hongrie#manifestation#ukraine
Hashtags
@voir_yeux · Post #12761 · 01.05.2026 г., 14:17
🇫🇷 À l’occasion de la fête du 1er mai, le ministre de l’Intérieur Laurent Nunez a annoncé sur France Info TV que près de 320 manifestations étaient prévues à travers le pays, avec un peu plus de 100.000 personnes. #france#manifestation#fête
Hashtags
@voir_yeux · Post #11672 · 09.02.2026 г., 15:57
🇦🇺🇮🇱 En Australie, la police a dispersé la foule de manifestants réunis pour dénoncer la visite du président israélien à Sydney, indique une correspondante de TASS. #australie#israël#manifestation
Hashtags
@voir_yeux · Post #11564 · 31.01.2026 г., 16:23
🇫🇷🇪🇺 Des manifestants ont déchiré le drapeau de l'UE lors d'un rassemblement pour réclamer la sortie de la France de l'Union européenne. #france#manifestation#ue
Hashtags
@voir_yeux · Post #12439 · 06.04.2026 г., 21:24
🇳🇱 Une manifestation contre l’augmentation des dépenses militaires et la politique de militarisation du gouvernement néerlandais s’est déroulée dans le centre de la Haye, devant le ministère de la Défense. Environ 100 personnes y ont participé. #paysbas#manifestation#défense
Hashtags