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

Резултати

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

Пребарај: #installerx

当前筛选 #installerx清除筛选
祂录lze目录群

@talulze · Post #2099 · 05.01.2026 г., 07:43

用shizuku激活InstallerX Revived安装器和GKD跳广告软件 之前下了个叫InstallerX Revived的软件,这个软件主要是用来跳过系统安装器的一种安装软件,主要表现为几秒内就能安装成功。而普通的系统安装器是又要检测安全,又要你输密码或者确认啥的,非常麻烦。 而用InstallerX Revived需要一些权限,比如没有root的用户,那就需要shizuku权限,激活了shizuku相当于有了一个更高级的手机管理员权限,虽然远没有达到root机器的级别,但是也能玩好多东西。 而一个叫GKD的跳广告软件,也需要shizuku来授权,所以我这里简单说说吧。 一、shizuku下载 github地址【 https://github.com/RikkaApps/Shizuku/releases 】下里面的APK文件就行。我也在【评论区】放一份。 而开启shizuku需要你连着一个WiFi就行,然后点开shizuku软件,找到【通过无限调试启动】下面的【配对】-【开发者选项】-【无线调试】-【使用配对码配对设备】,然后出现6位数字,然后你下拉手机栏,会有一个【已找到配对服务,请输入配对码】的框,输入那6个数字就行。最后返回主页,就能看到【shizuku正在运行】 总体也是非常简单的,只不过shizuku好像每重启一次手机都要重新激活一次这个权限。 二、InstallerX Revived 软件TG群【 t.me/installerx_revived 】 进去有安装包,安了就行 我们打开上面安装的shizuku,点【已授权X个应用】,我们把InstallerX Revived勾选一下。 然后打开InstallerX Revived软件,需要设置一些东西 📍【设置】-【停用系统安装验证】开开 📍【设置】-【自动锁定安装器】开开 📍【设置】-【安装器设置】-【授权器】,选择【shizuku】 📍【设置】-【安装器设置】-【安装方式】,选择【对话框自动】 这样就算是设置好了,然后使用场景就是在我们安装一些软件的时候,先下安装包,然后点分享,然后找到InstallerX Revived,然后一点就安装完了。如视频 但是,不是所有的软件都能走这种方式,有概率还是会走系统安装器。所以我一般在更新新版APP的时候,会用到这个InstallerX Revived。 三、GKD GKD就是一个跳过广告的软件,和之前的李跳跳差不多,我一般用来跳一些国内软件的开屏广告和微信小程序的突脸广告。 github地址【 https://github.com/gkd-kit/gkd/releases 】下里面的APK文件就行。我也在【评论区】放一份。 然后软件默认是没有规则的,导入规则的话,就去【 https://github.com/Lin-arm/GKD_subscription 】有大佬做的规则,比如我们复制里面规则源链接,然后打开GKD,点击【订阅】,右下角【+】号,输入进去就行。 然后GKD需要在后台运行,你们给他保活就行,开开无障碍啊,锁定一下后台啊,都可以的,软件会让你做的。 标签:#安卓手机软件#shizuku#InstallerX#安装器#GKD 后补:GKD原规则已经停止维护,已经替换为新大佬维护的链接