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

Резултати

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

Пребарај: #decretosicurezza

当前筛选 #decretosicurezza清除筛选
Savino Balzano

@savinobalzano · Post #1310 · 30.03.2026 г., 09:27

https://x.com/SavinoBalzano/status/2038548344822198365?s=20 Ne abbiamo sentite di tutti i colori: dalle prime dichiarazioni, pareva che una squadra antisommossa fosse piombata all’alba nella camera d’albergo di #IlariaSalis. È stata proprio la #Salis a parlare di un controllo “all’alba”. Erano invece le 7:30 del mattino. Quelli della “sinistra sinistra” hanno qualche problema con gli orari. Ricordo la coniuge Tesla rivendicare orgogliosa a Montecitorio: «mi sono svegliata presto, alle 6, per leggere le mozioni ed essere in Aula alle 8». Questi sì che sono pronti alla lotta di classe: non li ferma proprio nessuno. L’unica cosa è che al mattino preferiscono un buon caffè e il silenzio: sapete, come quelli che appena svegli non vogliono parlare con nessuno. Ci mettono un po’ a carburare, ma poi la rivoluzione è assicurata. Anche sulla durata del controllo qualcosa non torna: l’indomabile parlava di «oltre un’ora». La Questura riferisce che «il personale intervenuto si è limitato a richiedere i documenti a lei e alla persona in sua compagnia». E chi c’era in sua compagnia? Si legge sui giornali che fosse col suo assistente parlamentare, Ivan Bonnin. Il suo curriculum vitae è di assoluto prestigio: leggo ancora che sarebbe stato condannato nel 2015 per violenza privata e interruzione di pubblico servizio aggravata. Un tandem di personcine a modo, insomma: quanto accanimento da parte della pubblica sicurezza! Trovo davvero squallida la strategia di chi, pur di farsi un po’ di pubblicità, pur di riuscire a passare per vittima e a far parlare di sé, getta discredito sul proprio Paese. Sempre lei: «l’Italia ormai è un regime» e, contro il governo, «a quanto pare, effetto del #DecretoSicurezza». Bugiarda o inadeguata: delle due l’una. O entrambe. Il sistema di segnalazioni Schengen (SIS – Schengen Information System) è una banca dati condivisa tra i Paesi dell’area Schengen. Serve alla cooperazione di polizia per la sicurezza interna: permette a uno Stato di inserire un alert su una persona e tutti gli altri Stati vedono quell’informazione in tempo reale. La Germania (pare ormai acquisito) ha inserito una segnalazione nel SIS su di lei. Quando la beniamina del sol dell’avvenir si è registrata in hotel, il sistema italiano Alloggiati Web (obbligatorio per tutte le strutture alberghiere) ha incrociato i suoi dati con il SIS e ha generato un avviso automatico verso la polizia. La Questura di Roma ha inviato una volante: è stato un controllo di identificazione. Non è stata perquisita la stanza né redatto un verbale, e il controllo si è interrotto quando hanno capito che era europarlamentare. Sia chiaro: l’Italia non ha discrezionalità, deve eseguire la richiesta prevista dalla segnalazione straniera. Ogni Paese, anche l’Italia, può inserire alert per vari motivi: persona ricercata, sospettata di reati, sorveglianza per ragioni di ordine pubblico, legami con ambienti ritenuti rischiosi. Nel caso di Salis si parla spesso dei suoi precedenti in Ungheria e di presunti legami con gruppi antifascisti tedeschi come le “Hammerbande” (banda del martello… fate voi). Il sistema SIS esiste da oltre trent’anni. Il suo incrocio con Alloggiati Web dal 2013. È davvero indecente provare a ricondurre quanto accaduto ai decreti sicurezza del governo, dando del nostro Paese un’immagine distorta e degradante, solo per fare un po’ di becera e meschina propaganduccia politica. È spregevole anche il comportamento di quei leader politici che a questo giochetto da due soldi tengono il moccolo. Una roba imbarazzante. Certi episodi, certamente poco gradevoli, possono essere scongiurati, sissignore. Ad esempio evitando comportamenti illegali e violenti, di rivendicarli o, magari, candidando gente presentabile. E questo, ovviamente, vale per tutti: destra e sinistra. Ma almeno, se non temete il senso del ridicolo e volete raccontarvi come i nuovi Che Guevara, saltate la parte in cui frignate a favore di telecamera: il precipizio nel tragicomico diventa inevitabile.

Savino Balzano

@savinobalzano · Post #1033 · 06.06.2025 г., 08:03

https://x.com/SavinoBalzano/status/1930896258694074412?t=H78cl3mcaomMaD1iUtA9PQ&s=19 Giannini: «Se uno studente va in piazza per l'ambiente o per la scuola, viene arrestato e messo in galera. Se un lavoratore protesta perché gli hanno chiuso la fabbrica o è in cassa integrazione da un anno, finisce in galera. Il salto di qualità è questo». Queste le parole pronunciate ieri sera da @MassimGiannini. Ora, prendendole alla lettera, dovremmo dedurre che tutte le persone che oggi e domani parteciperanno alle manifestazioni verranno “arrestate e messe in galera”. Tra l’altro, sullo stesso tema sono state convocate ben due manifestazioni distinte. Il campo santo non è riuscito a trovare una linea comune nemmeno su questo. Addirittura il #PD è diviso al suo interno. Nell’era del #DecretoSicurezza, nell’era della dittatura delle destre destre destre, le manifestazioni si duplicano. Pensa un po’. Ecco, francamente non so cosa dire. Non vorrei dare l’impressione di un accanimento personale verso #Giannini, ma davvero cadono le braccia, per non dire altro. Prendiamo il commento di Pagella Politica sul decreto sicurezza. Ecco cosa scrivono: "Il testo, poi, inasprisce le pene per chi blocca una strada con il proprio corpo (...) o danneggia cose pubbliche durante le manifestazioni che si svolgono in un luogo pubblico o aperto al pubblico". Vi sembra compatibile con quanto affermato ieri sera da Giannini a @OttoemezzoTW? Se le due affermazioni sono inconciliabili, è evidente: una delle due è falsa. Qualcuno sta mentendo. Oppure è semplicemente incompetente. Non saprei che altra conclusione trarre. Ci sono aspetti critici nella vicenda, ad esempio il ricorso alla decretazione d'urgenza. Sulla conversione, peraltro, è stata posta la questione di fiducia. Questo sì che è un punto importante, anche se purtroppo non nuovo. Mi sono laureato quasi quindici anni fa, a Perugia, con una tesi intitolata: "La decretazione d’urgenza e la sua incidenza tra i poteri dello Stato anche alla luce delle più recenti evoluzioni". E già allora, nel 2011, descrivevo l’abuso del decreto-legge come un fenomeno strutturale, annoso e bipartisan. La mia Relatrice mi costrinse (giustamente!) a scrivere pagine e pagine sul punto, distinguendo peraltro l'abuso dal distorto uso. Quindi, Massimì, di cosa stiamo parlando? Che vi sia un indebolimento profondo del #Parlamento è vero. Ma smettila con il gioco retorico sulla "torsione istituzionale", la "democratura", la "capocrazia", la "democrazia illiberale made by Giorgia Meloni". Si rischia di diventare ridicoli. Molto ridicoli. Per essere chiari: se un gruppetto di esaltati pensa di bloccare il Raccordo Anulare, arrecando danni (anche gravi) a centinaia di migliaia di persone, è sacrosanto intervenire. Se qualcuno crede di poter lanciare vernice sulle opere d’arte nei musei, è giusto che lo Stato ponga un argine a questa deriva. Che vi sia un rischio per la democrazia e la libertà in Italia è in parte vero. Ma questo rischio oggi deriva soprattutto da un’informazione mendace e propagandistica. Quella sì, davvero di regime. Alla prossima, temo.