@notizieturchia · Post #3164 · 24.03.2025 г., 21:15
#Turchia: stasera in piazza il leader dell'opposizione #OzgurOzel ha elencato una serie di aziende da boicottare perché vicine al governo oppure ignorano le manifestazioni in corso.
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
Пребарај: #ozgurozel
@notizieturchia · Post #3164 · 24.03.2025 г., 21:15
#Turchia: stasera in piazza il leader dell'opposizione #OzgurOzel ha elencato una serie di aziende da boicottare perché vicine al governo oppure ignorano le manifestazioni in corso.
Hashtags
@notizieturchia · Post #3143 · 22.03.2025 г., 22:31
#Turchia: il leader del principale partito d'opposizione #OzgurOzel: "Come non abbiamo rispettato nessun divieto incostituzionale negli ultimi 3 giorni, non lo rispetteremo neanche questa volta".
Hashtags
@notizieturchia · Post #3174 · 25.03.2025 г., 22:09
#Turchia: stasera, il leader dell'opposizione, #OzgurOzel: "Sabato una grande manifestazione nazionale. Siamo pronti per affrontare un percorso che ci poterà alle elezioni anticipate. Pretendiamo che il processo del sindaco di #Istanbul sia trasmesso in televisione".
Hashtags
@notizieturchia · Post #3438 · 11.07.2025 г., 17:48
#Turchia: dopo la simbolica distruzione delle armi da parte di 30 militanti del #PKK parla il leader d'opposizione, #OzgurOzel: "Ci auguriamo che questo passo segni l'inizio di un periodo in cui le armi saranno completamente messe a tacere. L'instaurazione di una pace completa in Turchia è possibile solo attraverso la giustizia e la democrazia".
Hashtags
@notizieturchia · Post #3559 · 21.09.2025 г., 12:59
#Turchia: nel congresso straordinario di oggi, il principale partito d'opposizione del Paese, ossia il #CHP – Partito Popolare Repubblicano – ha rieletto #OzgurOzel come Presidente Generale. "Un caro saluto ai democratici curdi e alla popolazione palestinese oppressa da Israele e dagli USA. Siamo qui oggi per resistere ai colpi di Stato e dimostrare che non molliamo. Recep Tayyip Erdogan è uno degli uomini di Donald Trump e riceve da lui ordini anche per colpire le opposizioni in Turchia. Oggi ci troviamo di fronte a un governo che sta perdendo il consenso popolare. I sondaggi dimostrano che siamo noi il primo partito del Paese. Sono passati 186 giorni dall’arresto del sindaco di Istanbul, Ekrem Imamoglu, e tuttora non sono state presentate le prove promesse dal governo per legittimare quell’arresto. Si tratta di una messa in scena politica e giudiziaria. La nazione è immersa in una profonda crisi economica. Ci troviamo di fronte a un governo vecchio e incapace. La disperazione in cui si trova il Presidente della Repubblica provoca ogni giorno ulteriori perdite economiche al nostro Paese. Anche in politica estera il governo centrale continua a fallire. Erdogan non fa altro che litigare con Netanyahu e seguire la linea dettata da Trump, che dichiara apertamente di voler distruggere Gaza. Erdogan, invece, non è in grado di dire nulla a Trump. Tra qualche giorno si recherà a Washington, ma soltanto per parlare dell’acquisto di aerei militari. Dobbiamo essere più uniti e coraggiosi, perché c’è un governo che vuole eliminare la funzione del sistema elettorale. Dobbiamo alzarci in piedi, difendere il nostro partito e diventare governo. Vincerà il bene contro il male e perderanno i golpisti."
Hashtags
@notizieturchia · Post #3007 · 11.02.2025 г., 18:32
#Turchia: #OzgurOzel, il leader del principale partito d'opposizione, #CHP, annuncia la data (23 marzo) delle primarie per scegliere il candidato del partito per le elezioni presidenziali.
Hashtags
@notizieturchia · Post #2998 · 06.02.2025 г., 18:54
#Turchia: #OzgurOzel, il leader del principale partito d'opposizione, #CHP, ripete il suo appello per le elezioni anticipate: "Ormai non c'è più via di fuga. Le urne arriveranno e loro se ne andranno. Non c'è altra scelta. Quando se ne andranno, in questo Paese le risorse ministeriali e statali non saranno distribuite in modo fazioso, ma in modo giusto ed equo".
Hashtags
@notizieturchia · Post #2949 · 12.01.2025 г., 10:12
#Turchia: #OzgurOzel, il leader del principale partito d'opposizione #Chp; "Siamo pronti per governare il Paese. Già questa settimana si può prendere la decisione per le elezioni anticipate".
Hashtags
@notizieturchia · Post #3530 · 07.09.2025 г., 21:23
#Turchia: #OzgurOzel, leader dell'opposizione invita i cittadini a difendere la sede del partito #Chp a #Istanbul, il Min degli Interni minaccia con gli interventi aggressivi e la Prefettura della città vieta ogni tipo di manifestazione in 6 zone per 4 giorni.
Hashtags
@notizieturchia · Post #3166 · 25.03.2025 г., 07:33
#Turchia: il leader dell'opposizione, #OzgurOzel, in piazza: "Il 25 marzo concludiamo il ciclo delle manifestazioni a #Saraçhane ma procediamo con altre azioni e in altre piazze".
Hashtags
@notizieturchia · Post #3291 · 11.05.2025 г., 07:31
#Turchia: parla #OzgurOzel, il leader del principale partito d'opposizione, nella città di #Van: "Sosteniamo pienamente la notizia del disarmo dell'organizzazione terroristica che giungerà il prima possibile".
Hashtags
@notizieturchia · Post #2931 · 02.01.2025 г., 10:35
#Turchia: #OzgurOzel, leader del principale partito d'opposizione, #CHP si riferisce al nuovo percorso di dialogo con #Ocalan: "Sono a favore di un nuovo processo che sarà condotto in una maniera onesta e trasparente".
Hashtags