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

Резултати

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

Пребарај: #qq

当前筛选 #qq清除筛选
油油の科技软件资源分享

@Youyousharechannel · Post #12977 · 23.05.2025 г., 02:56

QQ群相册下载工具:可获取QQ群相册内的照片 #QQ 一款由作者:李恒道 个人编辑的小工具,可以下载QQ群内的照片,操作简单,如果群相册内的照片很多,能帮助我们节省大量的时间。 软件下载完毕后需要先登录QQ,然后输入QQ群号,选择要下载的相册,开始下载。 https://www.52pojie.cn/thread-1998433-1-1.html

Hashtags

油油の科技软件资源分享

@Youyousharechannel · Post #12616 · 12.04.2025 г., 00:08

qqbirthday:查询 QQ 注册时间工具 #QQ 一款在线查询 QQ 注册时间工具,输入 QQ 号,快速查询其注册时间,信息查询api接口来源:https://api.lolimi.cn https://www.showdev.me/qqbirthday

Hashtags

XP Digital Lab

@rocCHL · Post #9397 · 02.02.2026 г., 05:25

马上“偷”菜:腾讯《QQ 经典农场》游戏官宣 2 月 6 日回归 《QQ 经典农场》将于 2 月 6 日正式回归,同步登陆 QQ 和微信。 从官方预热信息来看,本次上线的《QQ 经典农场》将提供手游版。 标签:#qq Created by RocM 官方频道:@rocCHL 官方群组:@roctech 官方合作:@rocmmbot

Hashtags

XP Digital Lab

@rocCHL · Post #9112 · 24.01.2026 г., 02:35

时隔 23 年后 QQ 秀官宣回归:只需上传图片即可 AI 生成,支持动态头像、花式干架、抽象舞蹈等玩法 标签:#qq Created by RocM 官方频道:@rocCHL 官方群组:@roctech 官方合作:@rocmmbot

Hashtags

XP Digital Lab

@rocchl · Post #7806 · 11.12.2025 г., 05:17

腾讯 QQ 群聊消息官宣支持元宝 AI 总结功能:仅自己可见,不会存储或用于其他场景 腾讯 QQ 官方宣布,群聊消息现已支持 元宝 AI 总结功能。用户在群聊未读消息过多时,可点击右上角【AI 总结】,授权后即可快速生成摘要。该功能仅对本人可见,且 QQ 不会存储或在其他场景使用这些总结内容。 标签:#qq Created by RocM 官方频道:@rocCHL 官方群组:@roctech 官方合作:@rocmmbot

Hashtags

beng!

@mdmbeng · Post #2011 · 18.07.2024 г., 00:07

#QQ 📱QQ 截图工具迎来史诗级升级:自动打码、高亮、长截图等多功能上线 ▶自动打码 ▶支持高亮 ▶新增添加水印 ▶自动长截图 ▶钉在桌面 ▶其他新功能 新版QQ截图工具还新增了序号标准、圆角截图、截图阴影、系统任务栏触发、分享等多个新功能。 目前,QQ电脑端截图工具已更新完成,用户可前往官网下载体验。QQ手机端也将在不久后更新上线,值得期待。 频道:@mdmbeng 投稿:@mdmbeng_Bot

Hashtags

纯情男高

@hanzichen · Post #922 · 30.07.2025 г., 23:17

QQ v9.2.5 (11140) TargetSdkVersion 31 原生库 arm64-v8a 更新日志 - 新增 QQ 闪传功能,10GB 大文件轻松传,传输速度提升 5 倍,支持跨应用分享; - QQ 钱包余额支持转账到本人的微信零钱账户; - 收藏表情长按支持快捷管理。 官网下载 | QQ Updates #QQ@QQUpdates

Hashtags

纯情男高

@hanzichen · Post #838 · 20.06.2025 г., 09:50

QQ v9.1.92 (10300) TargetSdkVersion 31 原生库 arm64-v8a 更新日志 - 官方 AI 助手小 Q 升级,支持多格式文件解析,信息处理更高效; - 腾讯频道发布器优化,发布支持添加地理位置; - 腾讯频道上线精华板块,优质内容可以加精。 官网下载 | QQ Updates #QQ@QQUpdates

Hashtags

123•••10•••1819
ПретходнаСтраница 1 од 19Следна