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

Резултати

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

Пребарај: #kindle

当前筛选 #kindle清除筛选
海螺壳|Spiraling Up

@thespiral · Post #275 · 04.06.2022 г., 00:34

资讯摘要✂️: 「 whtsky_: 发现我在亚马逊中国上有 200+ 电子书,于是写了一个 userscript 来批量下载中国站已购的 #Kindle 电子书: https://t.co/TTo770uKeB 接下来准备配合 DeDRM_tools 把这些书都导进 Calibri 里 」 https://twitter.com/whtsky_/status/1532720200549662720

Hashtags

Копирайтеры Алматы

@niyazov_org · Post #121 · 25.04.2023 г., 10:17

Способен ли искусственный интеллект писать романы? Если с английским ок, то найдите минут двадцать на довольно увлекательный лонгрид в The Verge, посвященный программам для написания художественных текстов на базе искусственного интеллекта. Автор Джош Дзиза рассказывает про индустрию потоковой (конвейерной, на наши деньги) беллетристики, того самого литературного джанк-фуда, с которого кормится огромная армия т.н. независимых авторов (independent authors). Героиня лонгрида — Дженнифер Лепп, которая однажды променяла уютный офисный аквариум на огромное болото книжной платформы #kindle, и теперь всеми правдами и неправдами старается не вылететь из обоймы успешных фэнтезийщиков. Избегая спойлеров, всё же процитирую мой любимый кусочек текста, в котором героиня вроде бы успешно оседлала одну из нейронок типа Sudowrite и Jasper, чтобы ускорить работу над текстами. И вот что получила в итоге (перевод вольный, не обессудьте): «Писательство всегда требовало от неё полного погружения в текст. Она засыпала с мыслями о своих героях, и продолжала думать о них, встречая новый день. Но когда ИИ взял на себя львиную долю писательского труда, творческий процесс вдруг застопорился. «Ложась в постель, я больше не думала ни о чем. А когда возвращалась к тексту — не могла ухватить сюжетную канву», — призналась Дженнифер. Она любила вплетать в ткань повествования тонкие нити морали, и это нравилось ее читателям. Но к третьей главе ей стало казаться, что она понятия не имеет, куда движется история, и как отмотать плёнку назад, чтобы вернуть всё под свой контроль. Вместо того, чтобы направлять ИИ, она оказалась позади нейронки, следуя за ней в неведомую кроличью нору». https://www.theverge.com/c/23194235/ai-fiction-writing-amazon-kindle-sudowrite-jasper

Hashtags

Dejavu's Blog

@dejavuBlog · Post #2479 · 05.06.2023 г., 01:05

Reabble for Android: 第三方优化适配 的 Reabble 安卓版 App 应用作者为 #Kindle 等电纸书上的 RSS 阅读器 Reebble 套了壳以用在 #安卓 系统上,并进行了适配优化: https://github.com/zmk-ink/reabble-android 作者展示的效果视频: https://twitter.com/gidot/status/1648012218229985280

ALL About RSS

@AboutRss · Post #1333 · 05.06.2023 г., 01:02

Reabble for Android: 第三方优化适配 的 Reabble 安卓版 App 应用作者为 #Kindle 等电纸书上的 RSS 阅读器 Reabble 套了壳以用在 #安卓 系统上,并进行了适配优化: https://github.com/zmk-ink/reabble-android 作者展示的效果视频: https://twitter.com/gidot/status/1648012218229985280

BotsGram®

@botsgram_cu · Post #3638 · 12.03.2021 г., 23:22

¿Que puede hacer este bot? @bookbrobot Envíe varios formatos de libros electrónicos a su dispositivo Kindle de forma gratuita. Idiomas: inglés, mandarín (Visto en @botsgram_cu) #libros#kindle

BotsGram®

@botsgram_cu · Post #3097 · 02.11.2020 г., 03:50

¿Que puede hacer este bot? @ebook_to_kindle_bot Este BOT puede convertir y cargar libros electrónicos directamente en su dispositivo Kindle. Envíeme sus libros electrónicos y yo haré el resto automáticamente. Idiomas: inglés (Visto en @botsgram_cu) #libros#kindle

ПретходнаСтраница 1 од 3Следна