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

Резултати

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

Пребарај: #greatereurasia

当前筛选 #greatereurasia清除筛选

В своем выступлении он также уделил внимание вопросам устранения избыточных барьеров, гармонизация национального регулирования вкупе с эффективными механизмами разрешения споров, защите инвестиций в консолидированном рыночном пространстве БЕП. «Участие бизнеса в процессе принятия институциональных решений позволяет сделать их более гибкими и устойчивыми, а также менее затратными. Мы в РСПП хорошо это знаем на основе нашего опыта сотрудничества в рамках ЕАЭС. Внимание к предложениям бизнеса при подготовке Таможенного кодекса ЕАЭС позволило получить эффективный документ, существенно упрощающий ВЭД в ЕАЭС, сейчас мы работаем с ЕАЭС по перспективным направлениям, таким, как цифровизация», - сказал Александр Шохин. Успешное развитие БЕП требует конструктивного диалога и адекватного институционального дизайна, отражающего интересы всех заинтересованных участников. Бизнес должен играть в этих процессах одну из ключевых ролей наравне с органами власти и экспертным сообществом. Президент РСПП подчеркнул, что для эффективного развития БЕП важен консолидированный голос бизнеса. Серьезным шагом вперед в этом направлении могло бы стать создание Деловой ассоциации Большой Евразии с участием ведущих объединений европейского, азиатского и евразийского бизнеса. «В условиях текущего экономического кризиса имеет смысл подумать над реанимацией идеи «гусиного клина» для решения задач поступательного развития Большой Евразии. Акцент мог бы быть сделан на формировании научно-производственных «кластеров развития», способствующих пространственному развитию технологий», - подытожил Александр Шохин, подчеркнув, что странам Евразии важно выстраивать партнерское взаимодействие в отношениях с ключевыми партнерами, в том числе ЕС. Предложения Александра Шохина получили активную поддержку со стороны других участников сессии, отметивших лидирующую роль РСПП в продвижении международного делового сотрудничества в нашей стране по ключевой проблематике международной повестки дня, такой как, например, «зеленая сделка». Об этом в частности говорили Андрей Слепнев и Йохан Вандерплаяетсе, упомянувшие в частности последнее заседание Международного совета по сотрудничеству и инвестициям (МССИ), которое прошло при участии посла ЕС в России Маркуса Эдерера. Новость на странице Центра многостороннего сотрудничества и евразийской интеграции Российского союза промышленников и предпринимателей (РСПП): https://xn--o1aabe.xn--p1ai/events/news/aleksandr-shokhin-sozdanie-delovoy-assotsiatsii-bolshoy-evrazii-budet-sposobstvovat-integratsionnym--5fceb86fe1129/ #БольшаяЕвразия#GreaterEurasia#RSPP#РСПП#ICCI#МССИ

Владимир Саламатов, председатель Комитета по торгово-экономическому сотрудничеству с Китаем и другими приоритетными странами, генеральный директор исследовательского центра «Международная торговля и интеграция», выразил мнение, что внедрение соглашений о взаимном признании результатов оценки соответствия способно стать новым шагом развития интеграционных процессов на пространстве БЕП. Свою позицию он проиллюстрировал примерами текущего взаимодействия с государствами ШОС. Важным аспектом деятельности БЕП должно стать налаживание взаимовыгодного и масштабного делового сотрудничества, что, в свою очередь, требует активной проектной деятельности. Об этом на примере работы Евразийского банка развития (ЕАБР) в Евразии рассказал руководитель Центр интеграционных исследований ЕАБР Андрей Петросьян. Сергей Красильников развил тему делового сотрудничества на пространстве БЕП. Он выразил мнение, что «предприниматели и их объединения должны полноценными участниками процессов развития БЕП, а интересы международного делового сотрудничества учитываться при принятии соответствующих политических решений». При этом все предпринимаемые шаги и оценка их целесообразности должны быть основаны на комплексном анализе возможных экономических эффектов от создания отдельных институтов Партнерства. Вице-президент РСПП подчеркнул, что понятие БЕП намного шире традиционных Зон свободной торговли и включает в себя колоссальный комплекс взаимодействий по линии органов власти, бизнеса, гражданского общества. Фактически, оно уже существует и постоянно развивается. В качестве примера он привел деятельность РСПП по институционализации и развитию взаимодействия с партнерами в рамках Делового совета ЕАЭС, ДКС АТЭС, «Деловой двадцатки», а также с отдельными государствами Большой Евразии. Также он рассказал о создании и планах по наращиванию партнерства в рамках АБ СВА, которая сама по себе является примером формирования «делового субрегиона» в АТР. В заключение он отметил, что «отношения с большинством потенциальных участников БЕП напоминают гражданский брак». Сергей Красильников предложил принять решение относительно того, нуждается ли такой формат связей в юридическом и «жестко-институциональном» оформлении. Или текущий характер сотрудничества является достаточным для создания БЕП и его утверждения в качестве принципиально нового формата международного взаимодействия? Однако вне зависимости от принятого подхода к строительству БЕП уже сегодня необходим постоянный информационный обмен о ведущейся работе и координация усилий всех заинтересованных сторон. Данное предложение представителя РСПП получило поддержку со стороны других участников Совещания. Центр многостороннего сотрудничества и евразийской интеграции (ЦМСЕИ) Российского союза промышленников и предпринимателей (РСПП): http://рспп.рф/events/news/biznes-dolzhen-stat-klyuchevym-uchastnikom-sozdaniya-bolshogo-evraziyskogo-partnerstva-5f7180ff61579/ #РСПП, #RSPP, #ЕАЭС, #ЕЭК, #БольшаяЕвразия, #EAEU, #EEC, #GreaterEurasia

Сотрудничество бизнеса – важнейший фактор формирования Большого Евразийского партнерства В десятом выпуске журнала «Международная жизнь» за 2021 год опубликована совместная статья Кирилла Барского, посла по особым поручениям МИД России, Сергея Красильникова, вице-президента – управляющего директора Управления международного двустороннего сотрудничества РСПП, и Сергея Михневича, управляющего директора Управления международного многостороннего сотрудничества и интеграции РСПП, «Продвигая инициативу Большого Евразийского партнерства: совпадение интересов государств, бизнеса и международных институтов». Полный текст доступен на странице Управления международного многостороннего сотрудничества и интеграции Российского союза промышленников и предпринимателей (РСПП): https://рспп.рф/events/news/sotrudnichestvo-biznesa-vazhneyshiy-faktor-formirovaniya-bolshogo-evraziyskogo-partnerstva-61719cbed8e2a/ #РСПП#БЕП#БольшаяЕвразия#RSPP#GEP#GreaterEurasia#GEBA