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

Резултати

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

Пребарај: #chaincatcher

当前筛选 #chaincatcher清除筛选
Crypto M - Crypto News

@CryptoM · Post #64837 · 10.04.2026 г., 03:17

🚀 Morgan Stanley's Bitcoin ETF Achieves Record First-Day Trading Performance Morgan Stanley's newly launched Bitcoin ETF has achieved the best first-day trading performance among all of the bank's ETF products. According to ChainCatcher, the head of digital assets at Morgan Stanley highlighted this achievement and mentioned that more cryptocurrency products are in development. #MorganStanley#BitcoinETF#cryptocurrency#ETF#digitalassets#ChainCatcher#BTC

Crypto M - Crypto News

@CryptoM · Post #65037 · 10.04.2026 г., 15:24

🚀 Huang Licheng Adjusts Bitcoin Holdings Amid Market Changes Huang Licheng has begun to take profits from some of his Bitcoin long positions. According to ChainCatcher, he currently retains 98 Bitcoin long positions. In addition, Huang holds 11,950 Ethereum long positions. His account shows a total unrealized profit of $1,020,000. #HuangLicheng#Bitcoin#Ethereum#ChainCatcher#longpositions#profit#cryptocurrency#BTC#ETH

Crypto M - Crypto News

@CryptoM · Post #65124 · 11.04.2026 г., 06:15

🚀 Immutable X to Unlock 9.62 Million Tokens on April 18 Immutable X (IMX) is set to unlock approximately 9.62 million tokens on April 18 at 8 a.m. UTC+8. According to ChainCatcher, this information comes from Web3 asset data platform RootData's token unlocking data. #ImmutableX#IMX#TokenUnlock#Web3#Crypto#Blockchain#RootData#ChainCatcher

Crypto M - Crypto News

@CryptoM · Post #64494 · 09.04.2026 г., 03:15

🚀 VANA Token Unlock Scheduled for April 16 VANA is set to unlock approximately 2.57 million tokens on April 16 at 19:00 UTC+8. According to ChainCatcher, this token release is valued at around $3.36 million, based on data from the Web3 asset data platform RootData. #VANA#Token#Unlock#April16#Crypto#Blockchain#Web3#RootData#ChainCatcher

Crypto M - Crypto News

@CryptoM · Post #64835 · 10.04.2026 г., 03:16

🚀 Infrared to Unlock 27.64 Million Tokens on April 17 Infrared (IR) is set to unlock approximately 27.64 million tokens on April 17 at 0:00 UTC+8. According to ChainCatcher, this information comes from the Web3 asset data platform RootData's token unlocking data. The unlocked tokens are valued at around $1.01 million. #Infrared#tokenunlocking#Web3#ChainCatcher#RootData#cryptocurrency#April17#digitalassets

Crypto M - Crypto News

@CryptoM · Post #65418 · 13.04.2026 г., 06:24

🚀 Whale Opens High-Leverage Bitcoin Short Position A large cryptocurrency holder, identified by the address starting with 0x004, has opened a Bitcoin short position with 33x leverage. According to ChainCatcher, the average price for this position is $70,745, involving 200 BTC. The position currently shows a floating loss of 10%. Earlier today, the same address closed a previous Bitcoin short position at break-even and has now re-entered the market. This marks the fifth time this month that the address has opened a short position. #Whale#Bitcoin#ShortPosition#Leverage#Cryptocurrency#BTC#ChainCatcher#FloatingLoss#Market#CryptoTrading

Crypto M - Crypto News

@CryptoM · Post #65215 · 12.04.2026 г., 03:24

🚀 Quai Network to Unlock 43.02 Million Tokens on April 19 Quai Network is set to unlock approximately 43.02 million tokens on April 19 at 21:00 UTC+8. According to ChainCatcher, this token release is part of the network's ongoing schedule. The tokens are valued at around $1.25 million. This development is being closely watched by stakeholders and investors in the Web3 asset space. #QuaiNetwork#TokenRelease#Web3#Crypto#Blockchain#TokenUnlock#Investors#Stakeholders#ChainCatcher

Crypto M - Crypto News

@CryptoM · Post #65182 · 11.04.2026 г., 16:55

🚀 Ethereum Price Movements Could Trigger Significant Liquidations Ethereum's price fluctuations could lead to substantial liquidations on major centralized exchanges. According to ChainCatcher, data from Coinglass indicates that if Ethereum surpasses $2,346, the cumulative liquidation of short positions could reach $893 million. Conversely, if Ethereum falls below $2,135, the liquidation of long positions could total $877 million. #Ethereum#Crypto#PriceMovements#Liquidations#CryptoTrading#Coinglass#ChainCatcher#ShortPositions#LongPositions#Cryptocurrency#ETH

Crypto M - Crypto News

@CryptoM · Post #64985 · 10.04.2026 г., 12:56

🚀 Ethereum Price Movements Could Trigger Significant Liquidations Ethereum's price fluctuations could lead to substantial liquidations on major centralized exchanges. According to ChainCatcher, Coinglass data indicates that if Ethereum falls below $2,082, the liquidation intensity for long positions could reach $974 million. Conversely, if Ethereum surpasses $2,299, the liquidation intensity for short positions could amount to $855 million. #Ethereum#PriceMovements#Liquidations#CentralizedExchanges#Coinglass#ChainCatcher#LongPositions#ShortPositions#ETH

Crypto M - Crypto News

@CryptoM · Post #64988 · 10.04.2026 г., 12:58

🚀 Hyperliquid Platform Whale Holdings Reach $3.721 Billion, Data Shows Hyperliquid platform whales currently hold positions valued at $3.721 billion, according to ChainCatcher. Data from Coinglass reveals that long positions account for $1.902 billion, representing 51.13% of the total holdings, while short positions amount to $1.818 billion, making up 48.87%. The long positions have incurred a loss of $6.8165 million, whereas the short positions have gained $17.7438 million. Notably, a whale address identified as 0xa5b0..41 has engaged in a 15x leveraged long position on ETH at a price of $2,148.7, currently showing an unrealized profit of $2.6246 million. #Hyperliquid#WhaleHoldings#ChainCatcher#Coinglass#LongPositions#ShortPositions#ETH#LeveragedPosition#Crypto#UnrealizedProfit

Crypto M - Crypto News

@CryptoM · Post #64987 · 10.04.2026 г., 12:57

🚀 Major BTC Long Position Liquidated on Hyperliquid Platform In the last 10 minutes, a significant BTC long position was liquidated on Hyperliquid, according to ChainCatcher. The position, held by the entity identified as 0x1e9, was closed at a price of $71,463, resulting in a substantial sell order. The position was initially opened today at 6 a.m. UTC+8, when BTC was trading above $72,000. It involved 247 BTC, equivalent to approximately $17.65 million. As the price declined, the holder opted for a rapid stop-loss exit, incurring a loss of about $180,000. #BTC#longposition#liquidation#Hyperliquid#ChainCatcher#cryptocurrency#BTCprice#stoploss#cryptotrading#loss

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