@TheLoversOfNetwork · Post #52 · 07.09.2020 г., 14:47
A friendly room to chat about, share media of, and generally enjoy everyone's favourite horny studs. Bulls and non-bulls alike welcome :) #Chat #LoN Join us at @BeefLovers
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
Пребарај: #lon
@TheLoversOfNetwork · Post #52 · 07.09.2020 г., 14:47
A friendly room to chat about, share media of, and generally enjoy everyone's favourite horny studs. Bulls and non-bulls alike welcome :) #Chat #LoN Join us at @BeefLovers
@TheLoversOfNetwork · Post #50 · 07.09.2020 г., 14:46
Lovers of Canines is a group for all you dog lovers out there! Come get tied to all the knotted content you could ever want~ #Chat #LoN https://t.me/LoversOfCanines
@TheLoversOfNetwork · Post #49 · 07.09.2020 г., 14:45
If you like murry purry balls of fluff, come pounce on into the group and prowl to your heart's content~ #Chat #LoN https://t.me/LoversOfFelines
@TheLoversOfNetwork · Post #47 · 07.09.2020 г., 14:43
A themed chat for those who love cervidae and their very large.... antlers. Come here and get bucked til you pass out~ #Chat #LoN @LoversOfDeer
@TheLoversOfNetwork · Post #46 · 07.09.2020 г., 14:42
Those who like things of avian variety then Lovers of Avians is the place for you! You'll find lots of birds and things with beaks and talons in here and those who love them. #Chat #LoN T.me/LoversOfAvians
@TheLoversOfNetwork · Post #45 · 07.09.2020 г., 14:41
For those who love stallions and horses, Lovers of Stallions is the 18+ stable for you! This chat is themed around all gay stallion loving, talk about horsecocks or how you have one in here! #Chat #LoN t.me/LoversOfStallions
@TheLoversOfNetwork · Post #44 · 07.09.2020 г., 14:41
Are you interested in dragons? Well Lovers of Dragons is the cave of wonders that you are adventuring for! All things dragon related will be found here and plenty of dragons flying about for you to love on~ #Chat #LoN t.me/LoversOfScalies
@TheLoversOfNetwork · Post #85 · 27.05.2022 г., 00:26
Do you like your childhood being ruined regularly? Possibly have a crush on Renamon? We have a channel for you~ Lovers of Rule 34 shares all the lovely furry based R34 content you'd want. If it exists, there is porn of it. #Channel #LoN https://t.me/LoversOfR34
@TheLoversOfNetwork · Post #53 · 07.09.2020 г., 15:01
Do you like your childhood being ruined regularly? Possibly have a crush on Renamon? We have a channel for you~ Lovers of Rule 34 shares all the lovely furry based R34 content you'd want. If it exists, there is porn of it. #Channel #LoN https://t.me/LoversOfR34
@TheLoversOfNetwork · Post #48 · 07.09.2020 г., 14:44
Have you played a bit too much Breath of the Wild? Do you wish Kass was your daddy? How about letting Revali's gale take you away to his nest?~ then you should take a look over at the Lovers of Rito channel, a nice place to go and enjoy those lovely ritos~ #Channel #LoN @LoverOfRito
@HostEvaluate · Post #786 · 12.06.2022 г., 14:21
#Catixs#JP#HND#HK#US#LAX#UK#LON HostProvider: Catixs Location: Tokyo, Japan Specification: 2vCore (Intel Xeon Silver 4210) | 2GB RAM | 48GB NVMe | 3TB @ 5Gbps | $24 / Month 日本 CDN77 的大带宽 VPS. 测的时候三网 NTT. https://paste.red/p/cdd8057fbc09 Location: Hongkong Specification: 2vCore (Intel Xeon E5-2690 v4) | 2GB RAM | 48GB NVMe | 3TB @ 5Gbps | $18 / Month 三网 NTT 的香港。 https://paste.red/p/38540e1266ca Location: Los Angeles, US Specification: 2vCore (AMD EPYC 7302P) | 2GB RAM | 24GB NVMe | 3TB @ 5Gbps | $18 / Month Hivelocity 机房 Digital Realty 机房,出栈网络走 Hivelocity。电信移动 level3, 联通 level3/HE https://paste.red/p/ae855257c8e8 Location: London, UK Specification: 2vCore (Intel Xeon E5-2650 v2) | 2GB RAM | 48GB NVMe | 3TB @ 5Gbps | $18 / Month 可以看 BBC(测试时). zare 在英国境内和欧美还是很好的。电信联通回程 cogent, 移动 telia. https://paste.red/p/4ab35e224c34 综合来看 LA 的性能是最好的 Edit: 补一个日本的 流媒体解锁报告