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

Резултати

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

Пребарај: #farage

当前筛选 #farage清除筛选
CulturalExile

@CulturalExile14 · Post #3848 · 01.07.2024 г., 17:17

This is the most accurate description I've heard of Nigel #Farage, and by association, #ReformUK. Daniel Bostock has a good memory of Farage's track record! Take heed, as he's controlled opposition, says what people want to hear, yet considers the man in the street a far-right hooligan while portraying himself as the man down the pub. https://www.bitchute.com/embed/1JAzLd6931o

VDARE.com

@vdare · Post #13781 · 02.12.2024 г., 19:38

Make Britain Great Again? Musk eyeing $100M donation to Nigel Farage and Reform UK, reported the Sunday Times. The cash infusion, which some insiders say could disrupt the British political scene, is being viewed as Musk's way of giving the finger to the UK Labour government under Keir Starmer, whom the billionaire has recently criticized on issues like free speech and mass migration. A far cheaper way for Elon Musk to give the finger to Starmer and the entire UK leftist elite would be to give Nick Griffin back his X account. They'd REALLY hate that! If you're still on X, please post that far and wide! #FreeNickGriffin #Musk#Farage

Savino Balzano

@savinobalzano · Post #1001 · 04.05.2025 г., 11:26

https://x.com/SavinoBalzano/status/1918988108160176497?t=zG6bQzgoH2MFssgcUBIIpw&s=19 Non è una questione di merito: è una questione di metodo. La #democrazia in #Europa sta morendo, e dovremmo preoccuparcene tutti. Lo sostengo da anni: se davvero un politico fosse in grado di rompere certi equilibri sistemici o di scardinare meccanismi sensibili, verrebbe accoppato senza esitazioni. Fisicamente o mediaticamente, cambia poco. A gennaio l’ex Commissario europeo francese Thierry Breton è stato chiarissimo: «In caso di interferenze annulleremo le elezioni. Lo abbiamo fatto in Romania e, se necessario, lo faremo anche in Germania». Eccoci serviti. È vero che all’interno di Alternative für Deutschland esistono frange estremiste, ma definirlo un partito neonazista è una banalizzazione strumentale, come tante altre che abbiamo visto negli anni. È presente da tempo in Parlamento e partecipa alle elezioni nel rispetto delle regole costituzionali. La leader del partito, Alice #Weidel, non ha certo il profilo tipico di una formazione politica hitleriana: è una donna omosessuale dichiarata, ha una compagna – Sarah Bossard, produttrice cinematografica svizzera di origini srilankesi – e insieme crescono due figli. Il problema non è nel merito delle idee del partito. Il problema è che tutti i sondaggi lo danno come prima forza politica della #Germania. L’Unione Europea mostra il suo vero volto: la democrazia è accettata solo se vincono “quelli giusti”. La democrazia in Europa è una copertura. Serve a nascondere il pilota automatico, il vincolo esterno, il “whatever it takes”. Contrariamente alla narrativa dominante, che ci racconta di popoli fieramente europeisti, la gente ha capito benissimo che è tutta una fregatura: un’élite di sciacalli li ha impoveriti, indottrinati, e continua a spingerli dentro un circolo vizioso di paura, mentre si investono montagne di denaro in armi e gli ospedali, le scuole, le università cadono a pezzi. Questa è una classe dirigente che odia i popoli e la democrazia. Tratta le persone come bestiame da mungere, pelare e macellare. Tutto qui. Sono dei mostri. La democrazia da queste parti è un bluff, e basterebbe un’informazione libera e seria per smascherare un sistema tanto corrotto e marcio. Ma l’informazione è parte del problema: spesso è finanziata dallo stesso sistema che dovrebbe denunciare. Ricordate la storia degli inglesi alla fame, disperati per la voglia di rientrare nell’#UE? Eppure #ReformUK sta scardinando il bipartitismo britannico, e Nigel #Farage ha ottenuto un risultato straordinario alle amministrative e alle suppletive. Com’è possibile? Come si concilia con il racconto che i tg ci hanno propinato ogni sera per anni? La democrazia in Europa è solo una maschera, utile a celare i veri interessi di piccoli gruppi dominanti e violenti. I tradizionali schieramenti – destra e sinistra – non erano altro che attori in un teatro che ormai non convince più nessuno. La gente comincia a capire, guarda altrove. Ed è proprio per questo che viviamo una delle fasi più pericolose della nostra storia: chi comanda oggi non accetterà mai pacificamente un cambio della guardia.

Ultimora.net - POLITICS 24

@Ultimorapolitics24 · Post #51711 · 20.01.2026 г., 18:08

🇬🇧#RegnoUnito – Crisi nel Partito Conservatore: negli ultimi giorni l’ex ministro della salute e dell'immigrazione Robert #Jenrick e, poco dopo, il ministro ombra degli esteri Andrew #Rosindell hanno lasciato il partito per aderire a #ReformUK. Da oltre un anno i Tories subiscono defezioni continue verso il partito di Nigel #Farage. @UltimoraPolitics24